繁体   English   中英

用新行替换 Pandas DataFrame 列中字符串的逗号

[英]Replace commas with new lines for string in column of Pandas DataFrame

我有一些数据帧:

d = {'fruit': ['apple', 'pear', 'peach'], 'values': ['apple_1_0,peach_1_5','pear_1_3','mango_1_0,banana_1_0,pineapple_1_10']}
df = pd.DataFrame(data=d)
df

fruit   values
0   apple   apple_1_0,peach_1_5
1   pear    pear_1_3
2   peach   mango_1_0,banana_1_0,pineapple_1_10

我想用新行而不是逗号分隔values列中的字符串,例如:

    fruit   values
    0   apple   apple_1_0
                peach_1_5
    1   pear    pear_1_3
    2   peach   mango_1_0
                banana_1_0
                pineapple_1_10

使用.str.split.str.split explode()将值放入列表中

df=df.assign(values =df['values'].str.split(',')).explode('values')

正如@cs95 所指出的,如果您想要没有重复值的索引。 请尝试

df.set_index('fruit', append=True)['values'].str.split(',').explode().to_frame()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM