我有两个csv文件。
包含如下列的列:
10.10.10.10 madeupdnsentry.domain.com
另一个看起来像这样:
10.10.10.10 ABCD.EFGH.1234
我想比较和组合匹配的条目。所以我最终可能会:
10.10.10.10 madeupdnsentry.domain.com ABCD.EFGH.1234
最好的方法是什么?它有大约1000个条目,有些将有匹配一些赢了。任何帮助表示赞赏。
答案 0 :(得分:0)
你可以使用pandas.read_csv(path)
读取带有Pandas的csv文件,然后在pandas中使用.merge()函数将它们连接到你想要的任何列上,并且可以通过传递设置连接的完成方式参数how
,例如df1.merge(df2, on='some_column', how='left')
答案 1 :(得分:0)
使用pandas
。请注意,这基本上是inner join
,所以如果两个数据集之间存在不匹配的记录,它们就会失效。但您可以使用how
函数中的merge
关键字参数更改联接。
>>> import pandas as pd
>>> data1 = [['10.10.10.10','madeupdnsentry.domain.com']]
>>> data2 = [['10.10.10.10','ABCD.EFGH.1234']]
>>> df1 = pd.DataFrame(data1, columns=['ip', 'domain1'])
>>> df2 = pd.DataFrame(data2, columns=['ip', 'domain2'])
>>> df1.merge(df2, on='ip')
ip domain1 domain2
0 10.10.10.10 madeupdnsentry.domain.com ABCD.EFGH.1234