我有以下df

email     | date | type
_________________________
[email protected] | 6/1  | order
[email protected] | 6/1  | return
[email protected] | 6/2  | return
[email protected] | 6/2  | return


我正在尝试将每一列的类型分别保持数据

email     | date | order | return
_________________________________
[email protected] | 6/1  | 1     |   0
[email protected] | 6/1  | 0     |   1
[email protected] | 6/2  | 0     |   0
[email protected] | 6/2  | 0     |   0


我一直在尝试使用pd.melt,但输出似乎不是我想要的。从Pandas dataframe transpose with original row and column values引用

最佳答案

您应该看看如何从分类列中创建虚拟变量。

有一个很好的Pandas函数可以实现名为“ get_dummies”的函数:

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.get_dummies.html

示范

df.drop('type', 1).join(pd.get_dummies(df['type']))

       email date  order  return
0  [email protected]  6/1      1       0
1  [email protected]  6/1      0       1
2  [email protected]  6/2      0       1
3  [email protected]  6/2      0       1

关于python - 将pandas df列数据转置为行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51988224/

10-12 17:03