我有一个像这样的变量:
**Name**
Heikkinen, Miss. Laina
Futrelle, Mrs. Jacques Heath (Lily May Peel)
Allen, Mr. William Henry
...
我想在逗号之后提取第一个单词。
这对我有用,但需要2个数据帧步骤:
train_df1=train_df['Name'].str.split(',',expand=True)
train_df2=train_df1[1].str.split(' ',expand=True)[1]
train_df包含变量'Name'
答案 0 :(得分:1)
您可以使用正则表达式来实现此目的。
import re
s="Heikkinen, Miss. Laina"
re.findall(r'(?<=,\s)[a-z]+',s,re.I)
如果字符串的格式是一致的(单词后跟一个,
后跟一个空格后跟空格分隔的单词),请使用
[i for i in s.split()][1]
答案 1 :(得分:0)
使用str.partition
和str.split
。
s = 'Heikkinen, Miss. Laina'
s.partition(',')[-1].split()[0] # 'Miss.'
答案 2 :(得分:0)
只是添加一个衬垫,假设你的字符串被换行符分隔,第一行是某种标题:
salutations = [x.split(", ")[1].split(".")[0] for x in string.split("\n")[1:]]
如果您不想执行正则表达式解决方案
答案 3 :(得分:0)
i = str.index(&#34;,&#34;) newStr = str [i:]