我想使用另一个掩盖df,而不管列的名称如何,但仅考虑它们的位置。例如,给定以下2 df:
df = pd.DataFrame({'D': [10,20,0], 'E': [0, 30, 10], 'F': [0, 0, 10]})
df2 = pd.DataFrame({'A': [1,1,1], 'C': [1, 1, 1], 'E': [1, 1, 1]})
并使用这个mask:
mask = (df != 0)
我想:
A C E
0 NaN 1.0 1.0
1 NaN NaN 1.0
2 1.0 NaN NaN
其中D掩模A,E掩模(第一DF的)C和F掩模E(第二DF的)。
我可以这样删除列名称:
df.columns = [''] * len(df.columns)
mask = (df != 0)
df2.columns = [''] * len(df2.columns)
dfn = df2.mask(mask)
但是有更好的方法吗?提前致谢
一只甜甜圈
相关分类