gpt4 book ai didi

Python Pandas - 从单元格中删除一个单词

转载 作者:行者123 更新时间:2023-12-02 15:43:14 24 4
gpt4 key购买 nike

我有一列包含名称。我想删除名称和 ;在名称后标记为 (Retired) 或 (retired) 的位置。但问题是,它并没有以相同的格式出现。有时单元格有多个名称,重试一个名称。在另一种情况下,单元格将有名字,然后是退休人员,然后是姓氏。

数据框 = df

Sample column values - Current state

Owner Name
George (Georgy) (Retired) Clooney
Meghan (retired) Markle
Harry Porter (Retired)
Hermione Granger; Harry Porter (Retired)
Ginny Weasley; Ron Weasley; Harry Porter (retired); Luna Lovegood

Sample column values - Future state

Owner Name
Null
Null
Null
Hermione Granger
Ginny Weasley; Ron Weasley; Luna Lovegood

我想过使用替换为“”,但它不起作用。请。如有任何指示,我将不胜感激。

最佳答案

split , 过滤,再次加入 groupby.agg :

df['Owner Name'] = (df['Owner Name']
.str.split(';\s*', expand=True).stack()
.loc[lambda s: ~s.str.contains('\(Retired\)', case=False)]
.groupby(level=0).agg('; '.join)
)

输出:

                                  Owner Name
0 NaN
1 NaN
2 NaN
3 Hermione Granger
4 Ginny Weasley; Ron Weasley; Luna Lovegood

关于Python Pandas - 从单元格中删除一个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75289175/

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