[英]add columns to specific level pivot tables in pandas
我正在尝试使用 Pandas 数据透视表来实现这种多索引形式。
因为原始数据是这样的。
我用这个代码table = pd.pivot_table(df, index=str(df.columns[0]), columns =list(df.columns[1:4]), values='Value')
得到这个结果
但是现在我需要将这三列(Forcast、Tolerance、Baseline Forcast)添加到每个子产品的数据透视表的最详细级别,就像在 ECo 下添加它们一样,我尝试了这个table[('OcP', 'CoC', 'tolerance')] = 0
它起作用了,但像这样将列添加到数据透视表的末尾。
那么如何添加它们并使它们属于已经存在的同一个子类别,而不是像上面显示的那样在枢轴的末尾? 注意:我知道有类似的问题,但他们没有解决我的问题。
table[('OcP', 'CoC', 'tolerance')] = 0
将 'OcP' 设置为 level1,将'CoC' 设置为 level2,将'tolerance' 设置为 level3。
你说你想要它们在 level3 而不是你必须像这样设置它们:
table[(level1, level2, "CoC")]
您还需要在层次结构中向上指定索引。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.