如果列和行的值是空的或空白,则将其填充为其他特定列的值

时间:2020-03-03 21:02:50

标签: python pandas

如果一列中的行是空字符串或空白字符串,我想用特定列的相应行值填充它们。

这是一个最小的示例,

开始数据框

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

1 个答案:

答案 0 :(得分:1)

stripwhere的组合:

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