使用 DataFrame 创建条形图

Create a bar graph with a DataFrame

我有一个如下所示的数据框:

     Cursos   Per1   Per2   Per3   Per4  ...  Per46  Per47  Per48  Per49  Per50
0    Curso1   True  False  False  False  ...  False  False  False   True  False
1    Curso2  False  False  False  False  ...  False  False  False  False  False

列按 10 分组 - ('Per1' 到 'Per10') ('Per11' 到 'Per20')... 这些组中的每一个代表一天每周 - 周一、周二等

我必须用这些 'days' 组中每一组的值创建一个条形图,其中值为 'True' (这意味着,在那个时期有 class那天)。

最后,应该有 5 个柱状图(每天一个),其中包含有关值 'True'.

的“Per”数量的信息

这个项目已经有 4,746 行了,这是最后一步,非常感谢任何帮助!

图形示例:

天数在底部(在这种情况下它们是西班牙语,具有 'true' 值的周期数在左侧。

您可以沿列使用 groupby() 来求和:

(df.set_index('Cursos')
   .groupby(np.arange(50)//10, axis=1)
   .sum().T.plot.bar()
)

尝试:

df.set_index('Cursos').groupby(np.arange(50)//10, axis=1)\
  .sum().sum()\
  .rename(index={n:i for n,i in enumerate(['lunes', 'martes', 'miercoles', 'jueve', 'viernes'])})\
  .plot.bar()

输出: