我有一个pandas数据帧,它是一个pandas数据帧类型,如下所示
type(df)
Out[176]:
pandas.core.frame.DataFrame
但是当我尝试在条形图这个数据框上使用任何绘图函数时,它会产生如下错误;
df.plot.bar()
AttributeError: 'function' object has no attribute 'bar'
其他功能如box plot或hist也不起作用。知道为什么吗?
答案 0 :(得分:2)
如果您想要绘制特定的列,可以尝试:
df.plot(x='x', y='y', kind='bar')
答案 1 :(得分:0)
有趣的是,对我来说它很有效:
df = pd.DataFrame({'ab': {0: 31196, 1: 18804}})
print df
ab
0 31196
1 18804
#New in version 0.17.0.
df.plot.bar()
另一种选择:
df.plot(kind='bar')
编辑(通过chat中的讨论):
我认为你需要boxplot
:
#filter columns
df = df.drop(['city','last_trip_date','phone','signup_date','user_red'], axis=1)
print df
Retained avg_dist avg_increase avg_price avg_value pct \
0 1 3.67 1.1 5.0 4.7 15.4
1 0 8.26 1.0 5.0 5.0 0.0
2 0 0.77 1.0 5.0 4.3 0.0
trips_in_first_30_days weekday_pct
0 4.0 46.2
1 0.0 50.0
2 3.0 100.0
df.boxplot(by='Retained', layout=(7,1), figsize=(5,15))