我有一个数据帧,如:
0 1 2
0 0.0 1.0 2.0
1 NaN 1.0 2.0
2 NaN NaN 2.0
我想要的是
Out[116]:
0 1 2
0 0.0 1.0 2.0
1 1.0 2.0 NaN
2 2.0 NaN NaN
这是我目前的做法。
df.apply(lambda x : (x[x.notnull()].values.tolist()+x[x.isnull()].values.tolist()),1)
Out[117]:
0 1 2
0 0.0 1.0 2.0
1 1.0 2.0 NaN
2 2.0 NaN NaN
有什么有效的方法来实现这一点吗?
apply
这里有一个慢下来的方法。
谢谢你的助手!:)
我的真实数据大小
df.shape
Out[117]: (54812040, 1522)