我尝试将df用作查找表,并尝试确定我的字符串是否包含该df中的值。简单的例子
str = 'John Smith Business Analyst'
df = pd.read_pickle('job_titles.pickle')
df将是一个有几个职位的专栏
df=会计师、律师、首席财务官、业务分析师等
现在,我们可以确定str有一个子字符串:businessanalyst,因为这个值包含在我的df中
返回结果将是substring='businessanalyst'
如果原始str是:
str='约翰史密斯公司'
然后返回值将为空,因为没有子字符串与df中的字符串匹配
只要一个字我就可以用了。例如:
df = pd.read_pickle('cities.pickle')
df = Calgary, Edmonton, Toronto, etc
str = 'John Smith Business Analyst Calgary AB Canada'
str_list = str.split()
for word in str_list:
df_location = df[df['name'].str.match(word)]
if not df_location.empty:
break
df_location = Calgary
城市将在df中找到,并返回那一行。只是不知道怎么当它是一个多字
我不确定您到底想对返回值做什么,但这里至少有一种方法可以识别它。首先,我制作了一个玩具数据框:
然后,我循环遍历
title
列中的值,看看它们是否在搜索项中:如果要对dataframe列中的所有名称执行此操作,并为新列指定标题,可以执行以下操作:
首先,我用一些名称创建一个数据帧:
然后,我循环遍历names的值和title的值,并将匹配的title分配给names数据框中的title列(不匹配的将有一个空字符串):
相关问题 更多 >
编程相关推荐