<p>使用<strong><a href="http://pandas.pydata.org/pandas-docs/stable/merging.html#merging-together-values-within-series-or-dataframe-columns" rel="nofollow">^{<cd1>}</a>。</strong>它允许您根据相同的索引用右侧数据帧上的匹配数据修补左数据帧上丢失的数据。在</p>
<p>在这个例子中,<code>df1</code>在左边,<code>df2</code>作为右边的一个。在</p>
<pre><code>In [48]: df = pd.read_csv('www004.csv')
...: df1 = df.set_index('mukey')
...: df2 = df.groupby('mukey').mean()
In [49]: df1.loc[426178,:]
Out[49]:
hzdept_r hzdepb_r sandtotal_r silttotal_r claytotal_r om_r
mukey
426178 0 36 NaN NaN NaN 72.50
426178 36 66 NaN NaN NaN 72.50
426178 66 152 42.1 37.9 20 0.25
In [50]: df2.loc[426178,:]
Out[50]:
hzdept_r 34.000000
hzdepb_r 84.666667
sandtotal_r 42.100000
silttotal_r 37.900000
claytotal_r 20.000000
om_r 48.416667
Name: 426178, dtype: float64
In [51]: df3 = df1.combine_first(df2)
...: df3.loc[426178,:]
Out[51]:
hzdept_r hzdepb_r sandtotal_r silttotal_r claytotal_r om_r
mukey
426178 0 36 42.1 37.9 20 72.50
426178 36 66 42.1 37.9 20 72.50
426178 66 152 42.1 37.9 20 0.25
</code></pre>
<p>请注意,下面的行在结果<code>df3</code>中仍然没有值</p>
^{pr2}$
<p>因为它们一开始是单行,因此,<code>.mean()</code>对它们来说没有任何意义(呃,看到我在那里做了什么吗?)。在</p>