【发布时间】:2018-03-27 00:50:38
【问题描述】:
我在合并两个大型 Dataframe 时遇到问题,因为尽管有合适的值,但合并会返回 NaN 值。两个df的形状如下:
df1
Motor
2232
1524
2230
2230
2224
1516
1724
2224
1524
1624
1724
2224
2224
1524
1524
1516
1524
2224
1624
1724
1724
2224
2224
df2
Motor Output Torque (mNm)
0615 0,17
1219 0,72
1516 0,59
1624 2
2230 4,7
2233 5,9
0816 0,7
1016 0,92
1024 1,6
1224 1,7
1319 1,4
1331 3,8
1516 0,97
1524 2,9
1717 2,2
1724 4,5
2224 6,8
2232 10
1336 3,6
1727 4,9
1741 8,8
2237 12
2642 26
我使用代码:
MergeDat=MergeDat.merge(Motor,how="left")
print(MergeDat)
其中 MergeDat= df1 和电机= df2
结果返回:
Motor Output Torque (mNm)
0 2232 NaN
1 1524 NaN
2 2230 NaN
3 2230 NaN
4 2224 NaN
5 1516 NaN
6 1724 NaN
7 2224 NaN
8 1524 NaN
9 1624 NaN
10 1724 NaN
11 2224 NaN
12 2224 NaN
13 1524 NaN
14 1524 NaN
15 1516 NaN
16 1524 NaN
17 2224 NaN
18 1624 NaN
19 1724 NaN
20 1724 NaN
21 2224 NaN
22 2224 NaN
23 1524 NaN
24 1724 NaN
25 1841 NaN
26 2224 NaN
我不知道为什么没有合并输出扭矩列...
感谢任何帮助!
【问题讨论】:
-
您可以在问题中添加
df.dtypes吗?怀疑后面是字符串列,前面是数字类型。 -
“电机”列的数据类型不同。通过应用jezrael 的答案解决了这个问题
标签: python pandas dataframe merge