gpt4 book ai didi

python - 将列中的类别扩展为 Pandas 中的列名

转载 作者:行者123 更新时间:2023-11-28 21:42:00 25 4
gpt4 key购买 nike

我正在尝试扩展(不确定它是否是正确的词)一些绝对的使用 pandas 将数据放入列中。

假设我有以下数据框:

df = pandas.DataFrame({'name': ['john', 'john', 'louis', 'louis'], 
'day':['a', 'b', 'a', 'b'], 'oranges':[10, 23, 15, 5],
'apple': [5, 4, 1, 3]})

产生这张表的:

       apple day   name  oranges
0 5 a john 10
1 4 b john 23
2 1 a louis 15
3 3 b louis 5

我想使用一些 pandas 方法来生成这样的表:

   apple_a apple_b name  oranges_a  oranges_b
0 5 4 john 10 23
1 1 3 louis 15 5

到目前为止我已经尝试过:

df.pivot('name', columns='day')

apple oranges
day a b a b
name
john 5 4 10 23
louis 1 3 15 5

我的问题是:如何使用 Pandas 根据分类信息拆分数据并创建更多列?

提前致谢

雷南

最佳答案

你已经得到了想要的输出,你需要格式化列名

df = df.pivot('name', columns='day')
df.columns = ['_'.join(col).strip() for col in df.columns.values]
df = df.reset_index()

name apple_a apple_b oranges_a oranges_b
0 john 5 4 10 23
1 louis 1 3 15 5

关于python - 将列中的类别扩展为 Pandas 中的列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44167418/

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