大熊猫中的barplot不适用于非数字数据

时间:2017-04-18 03:33:35

标签: python pandas

我在pandas df中有一个名为品种的列,其中包含猫的品种,例如Siamese,Russian Blue等。

我想返回一个条形图,显示每个品种在表格中列出的次数。我尝试了df ['繁殖']。plot.bar(),但我收到错误"空' DataFrame':没有数字数据要绘制&#34 ;。

2 个答案:

答案 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()

enter image description here

答案 1 :(得分:0)

您正在使用Seaborn的countplot()

import matplotlib.pyplot as plt
import seaborn as sns

sns.countplot('breed', data = df)