Pandas:两个不同 Dataframe 中同一列的plot .value_counts()

vawmfj5a  于 2022-12-25  发布在  其他
关注(0)|答案(1)|浏览(163)

我有两个列相同的 Dataframe (不同的值,对我来说重要的是不要将两者合并)。
我想为这些 Dataframe 的同一列的.value_counts()绘制一个条形图(例如, Dataframe 1中的列“A”将为绿色, Dataframe 2中的列“A”将为蓝色)。
当然,正确比较X轴值也很重要(即,每个X标签都将显示val1的value_counts,然后是val2等)。
现在我只能分别为每个人做,例如:df1['A'].value_counts(normalize=True).plot(kind='bar',title='col A distribution dataframe1')
在一行中完成对我来说并不重要(也可以使用“原生”matplotlib)。

2lpgd968

2lpgd9681#

您可以将数据框合并在一起,当您从它们绘图时,Pandas会自动将条形并排放置。只需确保在绘图之前,您为要绘图的第二个数据框的列添加了后缀/前缀,这样图例就不会混淆。

repeating_columns = #repeating columns that you aren't going to plot

df = pd.concat([df1, df2], axis=1).drop([repeating_columns], axis=1)
df[['df1_A','df2_A']].plot(kind='bar')

相关问题