我在pandas df中有一个名为品种的列,其中包含猫的品种,例如Siamese,Russian Blue等。
我想返回一个条形图,显示每个品种在表格中列出的次数。我尝试了df ['繁殖']。plot.bar(),但我收到错误"空' DataFrame':没有数字数据要绘制&#34 ;。
答案 0 :(得分:2)
您可以使用 value_counts ,例如:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
catTypes = ['siamese','russian_blue','tabby']
# Generate dummy data
df = pd.DataFrame()
df['breed']=np.random.choice(catTypes, 100)
fig, ax = plt.subplots(1,1)
# value_counts will give the count of each breed
df['breed'].value_counts().plot(kind='bar', ax=ax)
ax.set_xticklabels(ax.get_xticklabels(),rotation=0)
fig.show()
答案 1 :(得分:0)
您正在使用Seaborn的countplot()
import matplotlib.pyplot as plt
import seaborn as sns
sns.countplot('breed', data = df)