我有以下数据框。,
company,sector,marks
a,b1,21
b,b2,27
c,b2,20
a,b3,70
我必须显示公司,部门和商标总和 我们如何在pandas中获取唯一的列值长度
答案 0 :(得分:1)
print (pd.Series([df.company.nunique(),
df.sector.nunique(),
df.marks.sum()], index=df.columns))
company 3
sector 3
marks 138
dtype: int64
print (pd.Series([df.company.nunique(),
df.sector.nunique(),
df.marks.sum()], index=df.columns).to_dict())
{'company': 3, 'sector': 3, 'marks': 138}
或者:
print (pd.Series([df.company.nunique(),
df.sector.nunique(),
df.marks.sum()], index=df.columns).to_json())
{"company":3,"sector":3,"marks":138}
如果需要自定义名称:
print (pd.Series([df.company.nunique(),
df.sector.nunique(),
df.marks.sum()], index=['comp','sec','mar']))
comp 3
sec 3
mar 138
dtype: int64