如何在python pandas中查找特定的列唯一值?

时间:2016-06-16 11:14:16

标签: python python-2.7 pandas dataframe

我有以下数据框。,

company,sector,marks
a,b1,21
b,b2,27
c,b2,20
a,b3,70

我必须显示公司,部门和商标总和 我们如何在pandas中获取唯一的列值长度

1 个答案:

答案 0 :(得分:1)

我认为您可以使用nuniquesum

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