【发布时间】:2015-09-23 12:05:42
【问题描述】:
我有一个 Pandas 数据框,其中 Items 列是一个列表。
cust_id Items
100 ['item1','item2','item3']
101 ['item5','item8','item9']
102 ['item2','item4']
我想把上面的数据框转换成下面的格式。
cust_id Items
100 item1 item2 item3
101 item5 item8 item9
102 item2 item4
我尝试使用 pandas 内置的字符串替换功能将其返回原始列而不实际执行字符串替换操作。
df['Items']=(df['Items'].astype(str)).replace({"['":"", "', '":" ", "']":"" },method='string')
请指教
更新:
我使用下面的代码来创建原始数据框。
df=df1.groupby(['cust_id'])['Items'].apply(list).reset_index()
【问题讨论】:
-
对不起是元素列表还是列表的字符串?您可以发布代码来构建您的 df 以避免歧义
-
为什么不在列上使用
apply,并执行lambda lst: ' '.join(lst)之类的操作 -
@EdChum 我已添加代码来重建我的原始 df。
-
@Brian 这对我来说是新信息,我会检查一下。
标签: python string pandas dataframe