如何合并列,对它们进行计数,然后绘制结果?

数据挖掘 Python 熊猫 绘图 描述性统计 计数
2022-03-16 09:33:34

如何从具有多个具有相似值且需要合并的列的数据框中获取:

df1 = pd.DataFrame({'firstcolumn':['ab', 'ca', 'da', 'ta','la'],
'secondcolumn':['ab', 'ca', 'ta', 'da', 'sa'], 'index':[2011,2012,2011,2012,2012]})

到一个交叉表,它告诉我每年收集了多少个值?

Index ab ca da ta sa la
2011 2  0  1  1  0  0
2012 0  2  1  1  1  1

另外,如何绘制表格?

1个回答

可以这样做:

import pandas as pd
melted = pd.melt(df1, id_vars=["index"], var_name="Var", value_name="Score").dropna()
table=pd.crosstab(index=melted['index'], columns=melted['Score'])
%matplotlib inline
table.plot.bar() #for simple axes subplots