用GROUPBY函数创建函数的正确方法是什么

wtlkbnrh  于 2022-10-23  发布在  其他
关注(0)|答案(2)|浏览(145)
def find_corr (data,x,y):
corr=data.groupby(by=['x','y']).size()
corr=corr.reset_index().rename(columns={0:'count'}).sort_values('count', ascending=False)[:10]
plot=sns.barplot(data=corr,'count',y=y,hue=x,orient= 'h')
plt.title(f'Correlation between {y} and {x}'.title(), fontsize = 14, weight = "bold")
plt.xlabel(x.title(), fontsize = 10, weight="bold")
plt.ylabel(y.title(), fontsize = 10, weight="bold")

此函数在使用时会带来KeyError:“x”

deyfvvtc

deyfvvtc1#

错误消息使我怀疑"x"不是data的列。如果将列名作为x和y传递给函数,请尝试data.groupby(by=[x, y]).size()

j7dteeu8

j7dteeu82#

因为您使用的是 Dataframe ,所以应该将列名作为字符串传递。此外,情节的x参数似乎缺失。
情节线应该是这样的:

plot=sns.barplot(data=corr, x='count', y='y', hue='x' ,orient= 'h')

相关问题