python - 用其他列填充 NaN 和空值

标签 python pandas dataframe mask

我想用其他列值填充 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

关于python - 用其他列填充 NaN 和空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50493886/

相关文章:

python - 将 python UTC 时间戳与字符串相互转换

javascript - 如何检查导致 Web 元素对 Python Selenium 不可见的原因?

python - ValueError : `validation_split` is only supported for Tensors or NumPy arrays, 发现 : (keras. preprocessing.sequence.TimeseriesGenerator 对象)

python - 谷歌历史价格到 Pandas 数据框

python - 从 Pandas DataFrame 获取包含元素列的列表

python - 如何使用 Python 解析 NHL Team Defense 统计数据以创建 Pandas DataFrame?

python - 将特定单元格定义为 pandas 数据框中的变量

python - 如何删除 Pandas 数据框中的唯一行

r - 如何从数据框中创建组合箱线图?

python - 相互比较相应的列并将结果存储在新列中