我正在尝试在两个Dataframe之间进行合并。为此,我使用了pandas的read_csv()函数。
两个DF之间共有一个Serie(全整数)。但这是第一个文件的Serie的值:
df1['id']
0 87784769
1 87784819
2 87784850
3 87784744
4 87784884
5 87721464
6 87721332
7 87721225
这是第二部分:
df2['id']
0 784769
1 784819
2 784850
3 784744
4 784884
5 721464
6 721332
7 721225
值不相同,因为在第一个中,每个数字相隔87000000。因此,合并功能无法正常工作!
(精度:我对帖子使用了相同的索引,但是我的两个df之间有所不同)
我认为从df1 ['id']的每一行中减去87000000,但我没有在pandas中找到合适的函数......
提前致谢!
答案 0 :(得分:1)
似乎你需要:
df1['id'] -= 87000000
与...相同:
df1['id'] = df1['id'] - 87000000
如果merge
功能不起作用,请检查id
中两个df
中的dtypes是否相同。
print (df1['id'].dtype)
print (df2['id'].dtype)
如果没有,请将它们转换为int
:
df2['id'] = df2['id'].astype(int)