这是一个初学者的问题。 假设我们有两个具有相同索引和相同列但数据不同的数据帧。
如何替换df2具有np.nan的df1数据,并将其替换为np.nan
import pandas as pd
import numpy as np
df1=pd.DataFrame(
[[1,3,np.nan],[5,3,np.nan],[np.nan,6,2]],
index=['a','b','c'],
columns=['01-10-1999','01-17-1999','01-24-1999']
)
df2=pd.DataFrame(
[[101,203,np.nan],[507,31,18],[12,np.nan,2]],
index=['a','b','c'],
columns=['01-10-1999','01-17-1999','01-24-1999']
)
答案 0 :(得分:2)
IIUC,使用mask
:
df1.mask(df2.isna())
输出:
01-10-1999 01-17-1999 01-24-1999
a 1.0 3.0 NaN
b 5.0 3.0 NaN
c NaN NaN 2.0