擅长:python、mysql、java
<p>使用<em><code>df.applymap</code></em>、<em><code>df.melt</code></em>和<em><code>df.stack</code></em></p>
<pre><code>df = df.applymap(str.split).reset_index().melt('prod', \
['activate', 'deactivate']).set_index(['prod', 'variable'])
df = pd.DataFrame(df.value.tolist(), index=df.index)\
.stack().reset_index().drop('level_2', 1)
df.columns = ['prod', 'category', 'testcase']
df
prod category testcase
0 TS001 activate 001_002
1 TS001 activate 001_004
2 TS002 activate 003_008
3 TS002 activate 024_080
4 TS001 deactivate 004_005
5 TS001 deactivate 006_008
6 TS002 deactivate 001_008
</code></pre>