【问题标题】:extract upper case from the title pandas从标题 pandas 中提取大写字母
【发布时间】:2023-01-20 19:41:24
【问题描述】:
我有一个数据集,其中的列如下所示:
AMPCO 冲击套筒
MEGGAR HARLEY 冲击套筒。
有什么方法可以提取 AMPCO,MEGGAR HARLEY?
即使我可以从第二句话中得到 MEGGAR,那也行。
我尝试了 res = list(filter(lambda c: c.isupper(), test_str[:1])) 和许多其他方法,但我没有得到我想要的
【问题讨论】:
标签:
python
pandas
dataframe
extract
【解决方案1】:
将Series.str.findall 与Series.str.join 一起使用:
df['new'] = df['col'].str.findall(r'[A-Z]+').str.join(' ')
print (df)
col new
0 AMPCO Impact Socket AMPCO
1 MEGGAR HARLEY Impact Socket MEGGAR HARLEY