如何用python在两组数据中找相应匹配的数据?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用python在两组数据中找相应匹配的数据?相关的知识,希望对你有一定的参考价值。
有两组数据(大数据,量以万计)A.B
A中每个值在B里有对应零到多个的值,比如:
apple------apple,Apple,APPLE(字符串匹配,但是B中有不同大小写多个值)
请问用python需要怎么表达?
最后是希望能给出所有A的(一对多;一对一;一对零)的成果
即如果含义相同,在B中所有对应的值不管大小写如何都要表达出来,比如:
APple
/
apple ---appLe
\
aPPlE
拜托了!
list1 = [i.lower() for i in list1]
list2 = [i.lower() for i in list2]
list3 = [i for i in list1 for j in list2 if i==j]追问
不好意思我没说清楚,是要保留B中大小写的所有数据,不是求一对一匹配
参考技术A数据大,假如数据存在文件,比如格式:
appleorange
banaa
代码如下:
for line_a in f_a:
with open('文件B') as f_b:
for line_b in f_b:
if line_a.strip().lower() == line_b.strip().lower():
print(line_b) 参考技术B 用这个库pandas来处理,数据量不是问题,存成CSV格式就行。 参考技术C 将A,B的值全部处理为小写或者大写后再进行匹配即可 参考技术D 考虑可以用panda模块的dataframe,相当于内存数据库。
如何用kettle把mongodb collection转为mysql表
个人理解就是默认都不选择时往目标集合添加数据,如果指定的集合不存在则先创建集合然后插入数据;Truncate:插入数据之前先把集合里的所有数据删除。(相当于数据删除同步);
Update:修改数据,存在则修改,不存在不操作。
upsert:找到匹配项则修改,找不到匹配项则添加。
勾选上红色圈着的选项之后,源数据修改、添加了,在目标库里都会有相应的操作。 参考技术A 用Output to Table那个step即可输出到MySQL数据库表中
以上是关于如何用python在两组数据中找相应匹配的数据?的主要内容,如果未能解决你的问题,请参考以下文章