如何在Python中从dataframe字符串列提取特定单词并存入新列
解决方案
方法1:使用str.extract正则提取(最稳妥)
该方法不限制Over/Under在字符串中的位置,只要包含目标关键词就能正确提取:
import pandas as pd # 构造示例DataFrame df = pd.DataFrame({ 'Name': ['Michael Johnson Over', 'Michael Johnson Under', 'John Smith Over', 'John Smith Under'] }) # 提取Over/Under到新列 df['Name2'] = df['Name'].str.extract(r'(Over|Under)', expand=False)
方法2:使用str.split按空格拆分(适合关键词固定在末尾的场景)
如果你的数据中Over/Under永远是Name字段的最后一个单词,可以直接拆分后取最后一个元素:
df['Name2'] = df['Name'].str.split().str[-1]
输出验证
执行上述代码后,输出df结果如下:
Name Name2 0 Michael Johnson Over Over 1 Michael Johnson Under Under 2 John Smith Over Over 3 John Smith Under Under
内容的提问来源于stack exchange,提问作者nbafan249
相关产品推荐
相关产品推荐

