首页 > 解决方案 > 熊猫数据透视表正在添加不需要的列,导致我的计数重复

问题描述

我正在尝试以看起来像这样的数据框为中心

country col_a col_b col_c status      group
   a       4    5     6   confirmed     z
   a       4    5     6   failed        z
   a       4    5     6   unknown       y
   a       4    5     6   confirmed     z
   b       4    5     6   failed        y
   b       4    5     6   confirmed     y
   b       4    5     6   failed        z
   b       4    5     6   confirmed     z
   b       4    5     6   confirmed     z

我正在尝试调整,以便为每个国家/地区提供一个总数,然后对该国家/地区的每个组进行细分。如下。

country group confirmed failed unknown
   a      NaN       2      1       1
  Nan      z        2      1       0
  NaN      y        0      0       1
   b      NaN       3      2       0
  NaN      z        2      1       0
  NaN      y        1      1       0

我遇到的问题是,虽然它看起来像这样,但它会在顶部附加其他列,并重复如下状态。

                       col_a                    col_b                    col_c
country group confirmed failed unknown confirmed failed unknown confirmed failed unknown
   a      NaN       2      1       1      2      1       1         2      1       1 
  Nan      z        2      1       0      2      1       0         2      1       0 
  NaN      y        0      0       1      0      0       1         0      0       1
   b      NaN       3      2       0      3      2       0         3      2       0 
  NaN      z        2      1       0      2      1       0         2      1       0
  NaN      y        1      1       0      1      1       0         1      1       0

我使用的代码是 -

testdf = df2.pivot_table(index=['country','group'], columns='status', aggfunc=len, fill_value=0)

当它在控制台中打印时,它看起来很好。但是一旦我输出到excel,它就全部坏了!

有任何想法吗?

标签: pythonpandas

解决方案


df['abc'] = df[['col_a','col_b','col_c']].sum(axis=1)
table = pd.pivot_table(df, index =['country','group'], columns='status', values='abc', fill_value = 0)

推荐阅读