python - 用其他列填充 NaN 和空值
问题描述
我想用其他列值填充 NaN 和空值,在这种情况下,列barcode_y
由列填充barcode_x
这是我的数据
id barcode_x barcode_y A B
0 7068 38927887 38927895 0 12
1 7068 38927895 38927895 0 1
2 7068 39111141 38927895 0 4
3 7116 73094237 18 309
4 7154 37645215 37645215 0 9
5 7342 86972909 NaN 7 25
这就是我需要的
id barcode_x barcode_y A B
0 7068 38927887 38927895 0 12
1 7068 38927895 38927895 0 1
2 7068 39111141 38927895 0 4
3 7116 73094237 73094237 18 309
4 7154 37645215 37645215 0 9
5 7342 86972909 86972909 7 25
假设我如何做到这一点?
解决方案
使用mask
x, y = df['barcode_x'], df['barcode_y']
y.mask(y.eq('') | y.isna(), x)
0 38927895
1 38927895
2 38927895
3 73094237
4 37645215
5 86972909
Name: barcode_y, dtype: object
推荐阅读
- ios - 按年份比较 Swift 日期
- tsql - SQL 选择有效的几何而不使用 MakeValid
- excel - Today 函数被日期本身覆盖
- java - XmlPath 选择前面/父属性
- php - SMTP 邮件未发送 - Codeigniter 电子邮件库
- android - 将 ByteBuffer 转换为 OpenCV Mat
- html - 在 if 条件 XSLT 中查找特殊节点
- javascript - 使用带有 CSS 过渡的 SVG 图像调整 div 的大小会导致 Firefox 中出现奇怪的交叉线
- c# - 如何在代码中指定 ListView ScrollViewer 而不显示 ListView
- css - 动态显示带有网格的右侧面板