擅长:python、mysql、java
<p>你可以用<a href="https://pandas.pydata.org/pandas-docs/stable/user_guide/reshaping.html#reshaping-stacking" rel="nofollow noreferrer">unstack</a>这样的一行代码来完成</p>
<pre><code>df.set_index(["col1", "col2", "PARMAM_NAME"])["PARMAM_VALUE"].unstack().reset_index()
</code></pre>
<p>基本上,我将索引中的其他列放在开头(<code>col1</code>,<code>col2</code>),然后是要透视的列(<code>PARMAM_NAME</code>)。之后,我在<code>PARMAM_VALUE</code>上取消了最后一个索引的堆栈。为了完成,我重置了索引,将<code>col1</code>和<code>col2</code>从索引移回数据帧</p>
<p>尽管如此,如果您对<a href="https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.pivot_table.html" rel="nofollow noreferrer">pivot_table</a>没有问题,也可以这样做:</p>
<pre><code>df.pivot_table("PARMAM_VALUE", ["col1", "col2"], "PARMAM_NAME").reset_index()
</code></pre>