擅长:python、mysql、java
<p>我想你这里有些事。当你说左数据帧时,我假设你的意思是它应该是左连接右连接?你不是说“在一起”在样本的左边?在</p>
<p>我认为可以安全地假设“together”中的邮政编码是字符串而不是int。您得到的是NaN,因为它们在2个数据帧中不匹配,例如47283不等于“47283”。在</p>
<p>另外,如果是一个左连接,你想一起在左边,你应该有1个NaN付款,因为你只有2个邮政编码匹配,如果他们是相同的数据类型。在</p>
<p>如果你想在左边控制,我建议你这样做(我想你会这样做):</p>
<pre class="lang-py prettyprint-override"><code>control = pd.DataFrame({
'payment':['Rent','Mortgage','Rent'],
'zip_code':[94053,47283,25769]
})
together = pd.DataFrame({
'age':[[25,64,24],[78, 39,35],[82,33,19]],
'zip_code':[12583,47283,25769]
})
control.merge(together,on='zip_code',how='left')
</code></pre>
<p>这将得到以下结果:</p>
^{pr2}$
<p>如您所见,您的年龄为1NaN,因为94053不在“together”数据帧中。在</p>