擅长:python、mysql、java
<p>我正在使用<code>cumcount</code>和<code>merge</code></p>
<pre><code>df1=df.loc[df.col1.ne('None'),:].copy()
df2=df.loc[df.col1.eq('None'),:].copy()
df1['Key']=df1.groupby('ID').cumcount()
df2['Key']=df2.groupby('ID').cumcount()
df1.merge(df2.drop('col1',1),on=['ID','Key'],how='left')
Out[816]:
ID col1 col2_x Key col2_y
0 1 Abcstreet 2017-07-27 0 2017-08-17
1 1 Defstreet 2018-07-15 1 2018-08-13
2 2 fbgstreet 2018-01-07 0 2018-08-12
3 2 trfstreet 2019-01-15 1 NaN
</code></pre>