首页 > 解决方案 > Pandas - 字符串替换,但元素是字符串列表

问题描述

这一行让/data/path"../datasets/"

 df['path']=df['path'].astype(str).str.replace("/data/","../datasets/")

如果列的每一行都path包含一个字符串列表,例如["/data/1","/data/2"]?如何使用替换?

例如df['path'][0]应该从["/data/1","/data/2"]["../datasets/1","../datasets/2"]

标签: pandas

解决方案


使用apply

df = pd.DataFrame({
    'path': [["/data/1","/data/2"]]
})
df['path'] = df['path'].apply(lambda lst: [s.replace('/data/', '../datasets/') for s in lst])

推荐阅读