我需要将多行组合成一行,这将是简单的空间连接
View of my dataframe: tempx value 0 picture1 1.5 1 picture555 1.5 2 picture255 1.5 3 picture365 1.5 4 picture112 1.5
我希望数据帧像这样转换:(空格分隔)tempx值
Expected output: tempx value 0 picture1 picture555 picture255 picture365 picture112 1.5 or as a python dict {1.5:{picture1 picture555 picture255 picture365 picture112}}
我尝试过的:
df_test['tempx']=df_test['tempx'].str.cat(sep=' ')
这工作但它结合了所有列中的行,如下所示:
tempx value 0 picture1 picture555 picture255 picture365 picture112 1.5 1 picture1 picture555 picture255 picture365 picture112 1.5 2 picture1 picture555 picture255 picture365 picture112 1.5 3 picture1 picture555 picture255 picture365 picture112 1.5 4 picture1 picture555 picture255 picture365 picture112 1.5
有没有优雅的解决方案?
你可以使用groupby
和apply
功能join
:
print df.groupby('value')['tempx'].apply(' '.join).reset_index() value tempx 0 1.5 picture1 picture555 picture255 picture365 pict...