擅长:python、mysql、java
<p>将它们合并为两个步骤,首先是<code>df1</code>和<code>df2</code>,然后将结果合并到<code>df3</code>。</p>
<pre><code>In [33]: s1 = pd.merge(df1, df2, how='left', on=['Year', 'Week', 'Colour'])
</code></pre>
<p>我从df3退学了一年,因为你最后一次加入时不需要它。</p>
<pre><code>In [39]: df = pd.merge(s1, df3[['Week', 'Colour', 'Val3']],
how='left', on=['Week', 'Colour'])
In [40]: df
Out[40]:
Year Week Colour Val1 Val2 Val3
0 2014 A Red 50 NaN NaN
1 2014 B Red 60 NaN 60
2 2014 B Black 70 100 10
3 2014 C Red 10 20 NaN
4 2014 D Green 20 NaN 20
[5 rows x 6 columns]
</code></pre>