擅长:python、mysql、java
<p>您可以向<code>dataframe.reindex</code>传递一个列列表,其中包括现有列和新列。如果数据帧中还不存在列,它将作为值<code>NaN</code>获取</p>
<p>假设<code>df</code>是您希望用列扩展的大数据帧。然后,您可以从小型数据帧创建一个新的列名列表(<code>columns_to_add</code>),并将它们组合起来。然后在大数据帧上调用<code>reindex</code></p>
<pre class="lang-py prettyprint-override"><code>import pandas as pd
df = pd.DataFrame({"A": [1,2,3], "B": [2,3,4]})
existing_columns = df.columns.tolist()
columns_to_add = ["C", "D"] # or use small_df.columns.tolist()
new_columns = existing_columns + columns_to_add
df = df.reindex(columns = new_columns)
</code></pre>
<p>这将产生:</p>
<pre><code> A B C D
0 1 2 NaN NaN
1 2 3 NaN NaN
2 3 4 NaN NaN
</code></pre>
<p>如果不喜欢<code>NaN</code>,可以通过传递关键字<code>fill_value</code>来使用不同的值。
(例如<code>df.reindex(columns = new_columns, fill_value=0)</code>)</p>