gpt4 book ai didi

python - 通过字符串变量 reshape 数据框

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

我有一个数据框如下

df = pd.DataFrame({'a': ['aaa\nbbb\nccc','ddd\nfff\nggg'], 'b':[1,2]})
df

我想得到

     a  b
0 aaa 1
1 bbb 1
2 ccc 1
3 ddd 2
4 fff 2
5 ggg 2

我知道如何使用 library(reshape)R 中制作它,但我无法在 python 中找到模拟

最佳答案

使用:

df = (df.set_index('b')['a']
.str.split('\n', expand=True)
.stack()
.reset_index(level=1, drop=True)
.reset_index(name='a')
.reindex(columns=df.columns))
print (df)
a b
0 aaa 1
1 bbb 1
2 ccc 1
3 ddd 2
4 fff 2
5 ggg 2

numpy 的替代方案:

s = df['a'].str.split('\n')
df = pd.DataFrame({'b':np.repeat(df['b'].values, s.str.len()),
'a':np.concatenate(s)})
print (df)
a b
0 aaa 1
1 bbb 1
2 ccc 1
3 ddd 2
4 fff 2
5 ggg 2

关于python - 通过字符串变量 reshape 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48490541/

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