擅长:python、mysql、java
<p>一种方法是使用<code>pd.value_counts</code>,后跟<code>pd.pivot_table</code>。在</p>
<p><strong>编辑:</strong>但实际上您应该使用<a href="https://stackoverflow.com/a/49961921/9209546">@Wen's solution</a>。在</p>
<pre><code>counts = df.groupby('Symbol')['CS'].apply(pd.value_counts).reset_index()
res = counts.pivot_table(index='Symbol', columns='level_1', values='CS',
fill_value=0, aggfunc=lambda x: x)
print(res)
# level_1 CIN EBV GS MSI
# Symbol
# A1 0 0 1 1
# A2 1 1 0 2
# A3 0 0 1 0
</code></pre>