<p>也许不是最优雅的方式,但这种<strong><em>只是</em></strong>解决了问题:</p>
<p><strong>第1步</strong></p>
<p>我们掌握的数据:</p>
<pre><code>df
'Value' ID_1 ID_2
0 11122222 ABC42123 33333
1 21219299 YOF21233 88821
2 00022011 ERE00091 23124
3 75643311;21233332 ROB21288 99421
4 12412421 POW94277 12231;33221
5 54221721 IRS21231;YOU28137 13123
</code></pre>
<p><strong>第2步</strong></p>
<p>让我们把行为不端的列分开</p>
^{pr2}$
<p><strong>第3步</strong></p>
<p>让我们将复制与原始数据合并到单个数据帧中:</p>
<pre><code>df2 = df[pd.notna(df["'Value'_Dupe"])][["'Value'_Dupe","ID_1","ID_2"]]
df2.columns = ["'Value'","ID_1","ID_2"]
df3 = df[pd.notna(df["ID_1_Dupe"])][["'Value'","ID_1_Dupe","ID_2"]]
df3.columns = ["'Value'","ID_1","ID_2"]
df4 = df[pd.notna(df["ID_2_Dupe"])][["'Value'","ID_1","ID_2_Dupe"]]
df4.columns = ["'Value'","ID_1","ID_2"]
df5 = df[["'Value'","ID_1","ID_2"]]
df_result = pd.concat([df5,df2,df3,df4])
df_result
'Value' ID_1 ID_2
0 11122222 ABC42123 33333
1 21219299 YOF21233 88821
2 00022011 ERE00091 23124
3 75643311 ROB21288 99421
4 12412421 POW94277 12231
5 54221721 IRS21231 13123
3 21233332 ROB21288 99421
5 54221721 YOU28137 13123
4 12412421 POW94277 33221
</code></pre>
<p>如果这能解决你的问题,请告诉我。在</p>