有两个DataFrame表,要比较两个表中的其中的某一列,例如两个表:
data [input, match_name, match_id]
ref [name, id]
从ref的name中找出与data的input匹配的名字,并将名字保存在match_name中,索引保存在match_id中
for i in data.index:
if (ref.name == data.input[i]).any():
matched_idx = ref.name[ref.name == data.input[i]].index[0]
data.match_name[i] = ref.name[matched_idx]
data.match_id[i] = ref.id[matched_idx]
# data.input[i]为一个字符串
# ref.name == data.input[i] 为data.input[i]是否等于ref.name中的各个值,返回类型为Series: (0, False) (1, False) (2,True)......
# ref.name[ref.name == data.input[i]] 取到为True的那个,index[0]取到match的索引
网友评论