fruit_type = ['Apple','Banana','Cherries','Dragonfruit']
for row in df['sentence']:
sentence['fruit_type'] = df['sentence'].str.extract("(" + "|".join(fruit_type) +")", expand=False)
上述代码的结果是:
df
sentence | fruit_type
here is an apple | apple
here is a banana, an apple | banana
here is an orange, a banana | orange
如何修改代码,以便如果df['sentence']
中有多个水果类型,df['fruit_type']
将返回一个NaN
代替
extract
,您可以将exctractall
与groupby
和apply
结合使用:首先,要获取所有匹配项:
注意有
pandas.MultiIndex
然后,使用
.groupby(level=0)[0].apply(list)
您将得到:最后,在使用
.apply(lambda x: x[0] if len(x) == 1 else np.nan)
之后:相关问题 更多 >
编程相关推荐