相关疑难解决方法(0)

用列名替换非空值

给出以下数据框:

import pandas as pd
d = pd.DataFrame({'a':[1,2,3],'b':[np.nan,5,6]})
d
    a   b
0   1   NaN
1   2   5.0
2   3   6.0
Run Code Online (Sandbox Code Playgroud)

我想用列名替换所有非空值.

期望的结果:

    a   b
0   a   NaN
1   a   b
2   a   b
Run Code Online (Sandbox Code Playgroud)

实际上,我有很多专栏.

提前致谢!

更新以从根回答: 要对列的子集执行此操作:

d.loc[:,d.columns[3:]] = np.where(d.loc[:,d.columns[3:]].notnull(), d.loc[:,d.columns[3:]].columns, d.loc[:,d.columns[3:]])
Run Code Online (Sandbox Code Playgroud)

python replace dataframe pandas

5
推荐指数
2
解决办法
462
查看次数

标签 统计

dataframe ×1

pandas ×1

python ×1

replace ×1