dsad111事情是这样的。。。我有一个朋友,他发来我俩个txt文件,我一看惊呆了!直接上图:
我一下没晕过去,后面仔细一看大概懂了:这个学弟不会把这俩个文件和二为一!
其实这个时候我们有很多方法,比如将其导入mysql数据库中生成两张表,然后left join,又或者是大数据的同学会比较熟悉:用spark或者hadoop 写个小代码即可哈哈哈。 但是我一问,他不是大数据的,fine,那就用python吧!
话不多说,直接上代码!
import json
import pandas as pd
# 读取第一个txt文件
from pandas import ExcelWriter
with open(r'C:\Users\86158\Desktop\index.txt', 'r') as f1:
data1 = f1.read()
# 转换为字典
dict1=eval(data1)
with open(r'C:\Users\86158\Desktop\热词.txt', 'r',encoding='utf-8') as f2:
data2 = f2.read()
dict2=eval(data2)
df1 = pd.DataFrame(dict1.items(), columns=['key1', 'value1'])
df2 = pd.DataFrame(dict2.items(), columns=['key2', 'value2'])
result = pd.merge(df1, df2, how='left', left_on='key1', right_on='key2')
with ExcelWriter("fulljoin.xlsx", mode='w', engine='openpyxl') as writer:
result.to_excel(writer,sheet_name='Sheet1')
这样子,我们很轻松地匹配了两个文件的键值对,并其将其合二为一。