gpt4 book ai didi

python - 如何使用python将重复的行移动到列中

转载 作者:太空宇宙 更新时间:2023-11-04 05:34:55 25 4
gpt4 key购买 nike

我在尝试弄清楚如何使用 python 执行此操作时遇到了非常困难的时间。我有下表:

NAMES    VALUE
john_1 1
john_2 2
john_3 3
bro_1 4
bro_2 5
bro_3 6
guy_1 7
guy_2 8
guy_3 9

我想去:

NAMES     VALUE1     VALUE2     VALUE3
john 1 2 3
bro 4 5 6
guy 7 8 9

我尝试过使用 pandas,所以我首先拆分索引 (NAMES),然后我可以创建新列,但我无法将值索引到正确的列。

至少有人能告诉我解决这个问题的方向吗?我不期望完整的代码(我知道这不受欢迎)但欢迎任何帮助。

最佳答案

拆分NAMES列后,使用.pivot reshape 您的 DataFrame。

# Split Names and Pivot.
df['NAME_NBR'] = df['NAMES'].str.split('_').str.get(1)
df['NAMES'] = df['NAMES'].str.split('_').str.get(0)
df = df.pivot(index='NAMES', columns='NAME_NBR', values='VALUE')

# Rename columns and reset the index.
df.columns = ['VALUE{}'.format(c) for c in df.columns]
df.reset_index(inplace=True)

如果你想要圆滑,你可以在一行中进行拆分:

df['NAMES'], df['NAME_NBR'] = zip(*[s.split('_') for s in df['NAMES']])

关于python - 如何使用python将重复的行移动到列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35927220/

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