python - Pandas Python用另一个行值更新列
问题描述
我有数百万行的数据框。作为我的数据框的示例:
Col0, Col1, Col2, Col3
Val0, Val1, Nan, Nan
Val0, Nan, Val3, Nan
Val0, Nan, Nan, Val5
我想要的输出是:
Col0, Col1, Col2, Col3
Val0, Val1, Val3, Val5
我为所需的输出提出了一个迭代请求,但这需要几个小时。
问候
解决方案
我不清楚这样做的好处是什么,除非您的 df 只是一个列表,其中列之间没有关系,但这里有一个解决方案:
对于这个df:
Col0 Col1 Col2 Col3
0 3 5 Nan Nan
1 3 Nan 12 Nan
2 3 Nan Nan 17
做这个
pd.concat([testcol[col].sort_values().reset_index(drop=True) for col in testcol], axis=1, ignore_index=True)
这使
0 1 2 3
0 3 5 12 17
1 3 Nan Nan Nan
2 3 Nan Nan Nan
推荐阅读
- javascript - Fetch API 发送空的 post 数组
- coldfusion - ColdFusion List Error 无效的列表索引 2
- node.js - 如何在 Strapi 中间件中访问请求正文?
- ruby-on-rails - ruby on rails 如何决定 ActionMailer 中电子邮件的 Header[Content-Type]
- tensorflow - 识别不属于 CNN 训练的类别的图像
- angular - 如何从组件 Angular 调用方法?
- linux - 将已安装的软件包转换为可交付的 RPM centos
- javascript - 单击确定时JavaScript警报不会消失
- json - 使用带有 openweathermap API 数据的 Arduino Uno 和 ESP8266 HUZZAH 出现问题
- python - 当我运行这个文件时,只有页面确实运行良好