gpt4 book ai didi

python - 向 pandas df 添加多列(多级列)

转载 作者:行者123 更新时间:2023-12-01 02:11:01 25 4
gpt4 key购买 nike

嗨,我有一个带有多级列的 pandas df:

sample = pd.DataFrame(pd.np.random.randn(10,2),columns=['a','b'])
df = pd.concat([samp], keys=['p4'],axis=1)
df

输出

    p4
a b
0 0.621016 0.920448
1 0.329792 -0.674688

我知道我可以添加一个列 c,如下所示:

df[('p4','c')] =df.p4.a - df.p4.b
df

输出:

    p4
a b c
0 0.621016 0.920448 -0.299432

它将具有正确值的“c”列添加到我想要的级别。

我的问题是如何将大量这些列添加到大型数据框中,而无需手动输入列?例如,我有列 (p5,['a','b']... (p6,['a','b']) 我正在考虑 for 循环或列表理解,但我很难弄清楚出如何添加大量计算列'c'

最佳答案

在我看来,循环是最具可读性和可维护性的方式。例如:

for i in range(4, 11):
df[('p'+str(i), 'c')] = df[('p'+str(i), 'a')] - df[('p'+str(i), 'b')]

关于python - 向 pandas df 添加多列(多级列),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48697639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com