通过使用iloc
和arg切片来构造一个新的df :
In [185]:
new_df = pd.DataFrame({'one':df['one'].iloc[::2].values, 'value':df['one'].iloc[1::2].values})
new_df
Out[185]:
one value
0 title1 R2G
1 title2 K5G
2 title2 R14G
3 title2 R2T
4 title3 K10C
5 title4 W7C
6 title4 R2G
7 title5 K8C
然后groupby
,您可以在“一个”上并lambda
在“值”列和仅join
值上应用一个:
In [188]:
new_df.groupby('one')['value'].apply(','.join).reset_index()
Out[188]:
one value
0 title1 R2G
1 title2 K5G,R14G,R2T
2 title3 K10C
3 title4 W7C,R2G
4 title5 K8C