如果一列中的行是空字符串或空白字符串,我想用特定列的相应行值填充它们。
这是一个最小的示例,
开始数据框
d1 = [['a', 'b', '3', 'd', '8', '9'], ['q', '', 'j', ' ', 'g', '\n']]
dtest = pd.DataFrame(d1).transpose()
dtest
0 1
0 a q
1 b
2 3 j
3 d
4 8 g
5 9 \n
我一直在努力弄清楚如何创建一个数据框,这将导致以下结果。
result = [['a', 'b', '3', 'd', '8', '9'], ['q', 'b', 'j', 'd', 'g', '9']]
resultdf = pd.DataFrame(result).transpose()
resultdf
0 1
0 a q
1 b b
2 3 j
3 d d
4 8 g
5 9 9
答案 0 :(得分:1)
strip
和where
的组合:
dtest[1] = dtest[1].where(dtest[1].str.strip().ne(''), dtest[0])
输出:
0 1
0 a q
1 b b
2 3 j
3 d d
4 8 g
5 9 9