我有两个不同的数据帧df和df2,我想循环通过df的每一行,在df2的特定行中搜索某些匹配,并为每个匹配返回一个txt文件。你知道吗
数据框=
name Tec Location
jhon js sr nz
mark python ssr us
alan java jr mx
df2=
company job Country Index
company a js jr uk 1
company b python ssr us 2
company c java jr mx 3
到目前为止,我一直在做以下工作:
for index, row in df.iterrows():
for indexb, rowb in df2.iterrows():
if str(row.Tec) in str(rowb.job) and str(row.Location) in rowb.Country:
print ('Match with ' + str(rowb.company))
sys.stdout= open(r'path\to\file\%s.txt'%(row['name']+ str(rowb.Index),), 'w')
else:
pass
我不断得到错误匹配的文本文件,或者在所有输出txt文件中重复df2的第一行。 我想把技术和工作做比较,把地点和国家做比较。 例如,本例的输出为: 标记2.txt,其中文件包含文本“与公司b匹配”
你知道吗?你知道吗
迭代行不是处理数据帧的首选方法。你知道吗
您可能想尝试加入df和df2。然后应用过滤器将要保存到csv中的行保留下来。你知道吗
相关问题 更多 >
编程相关推荐