将DF的某些功能应用于另一个DF

时间:2019-02-05 21:04:49

标签: python-3.x pandas dataframe

这是一个初学者的问题。 假设我们有两个具有相同索引和相同列但数据不同的数据帧。

如何替换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']
                 )

1 个答案:

答案 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