熊猫根据值重新定位列值

时间:2019-06-09 21:43:30

标签: python pandas

我有如下示例表:


|col_1|col_2|col_3|
|---|---|---|
|dog|cat|bike|
|cat|bike|dog|
|NaN|car|NaN|

在熊猫中,是否有任何方法可以重新排列每一行的列值,以使所有相同的值位于同一列中,如下所示:


|col_1|col_2|col_3|col_4|
|---|---|---|
|dog|cat|bike|NaN|
|dog|cat|bike|NaN|
|NaN|NaN|NaN|car|

缺少的值应替换为NaN。 谢谢。

1 个答案:

答案 0 :(得分:1)

这更像是get_dummies问题

s=df.stack().str.get_dummies()
yourdf=s.sum(level=0).mul(s.columns)
yourdf
   bike  car  cat  dog
0  bike       cat  dog
1  bike       cat  dog
2        car