gpt4 book ai didi

python - Pandas 在列中使用 lambda 应用拆分和连接

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

我有一列包含如下值。

apple~fruit lion~animal banana-fruit samsung~phone

每个项目由 空格(' ') 分隔,每个项目和类别由 '~' 分隔。我想提取由空格分隔的每个项目名称,如下所示

apple lion banana samsung

我可以使用 lambda 获取值的第一项。但我不知道如何连接由 space(' ') 分隔的每个项目。

df.item = df.item.apply(lambda x: x.split(' ')[0].split('~')[0])

最佳答案

使用join,默认情况下split也使用空格,所以应该简化:

df.item = df.item.apply(lambda x: ' '.join(x.split()[0].split('~')[0]))

使用 pandas 文本函数的解决方案:

df.item = df.item.str.split().str[0].str.split('~').str[0].str.join(' ')

如果性能很重要,请使用列表理解:

df.item = [ ' '.join(x.split()[0].split('~')[0]) for x in df.item]

关于python - Pandas 在列中使用 lambda 应用拆分和连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54532210/

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