我正在尝试制作一个条形图,以显示“男性”,“女性”和“不同身份”的百分比。因此,我希望在x轴上显示“男性”,“女性”和“不同身份”,在y轴上显示百分比。
这是我当前从其他地方获取的代码
sns.barplot(x = ds.Gender,y = x,data = ds,estimator = lambda x:len(x)/ len(ds)* 100)
当前,我得到了输出
“ x
和y
变量都没有显示为数字。”
我试图将'y'变量设置为数字,但是我没有这样做。我看了无数其他问题,但无法实施。
任何帮助将不胜感激。
答案 0 :(得分:0)
您已经为barplot
函数提供了数据框,因此您的x
和y
参数可以是与框架中的列匹配的字符串。您是正确的,barplot
将使用该估计量在y轴上产生百分比,并且您可以将任何数字列作为虚拟值传递给y
:
sns.barplot(x="Gender", y="Age", data=ds, estimator=lambda x: len(x) / len(ds) *100)