我有一个这样的熊猫数据框:
Year Winner
4 1954 Germany
9 1974 Germany
13 1990 Germany
19 2014 Germany
5 1958 Brazil
6 1962 Brazil
8 1970 Brazil
14 1994 Brazil
16 2002 Brazil
如何绘制Winner列的频率计数,以便y轴具有频率,x轴具有国家/地区名称?
我尝试过:
import numpy as np
import pandas as pd
df.groupby('Winner').size().plot.hist()
df1['Winner'].value_counts().plot.hist()
答案 0 :(得分:5)
您很亲密,需要Series.plot.bar
,因为value_counts
已经计算出频率:
df1['Winner'].value_counts().plot.bar()
也在工作:
df1.groupby('Winner').size().plot.bar()
输出value_counts
时解决方案之间的差异将以降序排列,因此第一个元素是出现频率最高的元素。
答案 1 :(得分:3)
除了@jezrael的答案,您还可以执行以下操作:
df1['Winner'].value_counts().plot(kind='bar')
@jezrael的其他人可能是:
df1.groupby('Winner').size().plot(kind='bar')