Python 基于两个Coulmn的熊猫百分比图
数据Python 基于两个Coulmn的熊猫百分比图,python,pandas,matplotlib,Python,Pandas,Matplotlib,数据 List=['X','Y'] ColA ColB ColC te Y a te Y a alo a te Y b te 2 b bb Y b aa X c alo u c aa b c 我想在x轴上绘制一个带有a列的条形图,以及B列列表中具有任意值的值的百分比,例如te(3/4)*100、aa(1/1)*100、alo(0/1)*100等等 df
List=['X','Y']
ColA ColB ColC
te Y a
te Y a
alo a
te Y b
te 2 b
bb Y b
aa X c
alo u c
aa b c
我想在x轴上绘制一个带有a列的条形图,以及B列列表中具有任意值的值的百分比,例如te(3/4)*100、aa(1/1)*100、alo(0/1)*100等等
df.groupby('ColA').ColB.apply(lambda x: x.notna().sum()/len(x)).mul(100).plot(kind='bar')
提供的数据
ColA ColB
0 te Y
1 te Y
2 alo None
3 te Y
4 te None
5 bb Y
6 aa X
注意:不要忘记导入matplotlib
from matplotlib import pyplot as plt
输出
< /P>在Col B中,我有很多值,只想在<代码>清单>代码>中应用一个过滤器,然后使用上面的代码,如<代码> df= df[df.COLB.ISIN(list)] < /代码>