2017-04-21 93 views
1

假設我產生以下使用大熊貓操作:熊貓:與NaN的

df = pd.DataFrame(np.ones(25).reshape((5,5)),index = ['A','B','C','D','E']) 
df1 = pd.DataFrame(np.ones(25).reshape((5,5))*2,index = ['A','B','C','D','E']) 
df[2] = np.nan 
df1[3] = np.nan 
df[4] = np.nan 
df1[4] = np.nan 
df2 = df+df1 
print(df2) 

    0 1 2 3 4 
A 3.0 3.0 NaN NaN NaN 
B 3.0 3.0 NaN NaN NaN 
C 3.0 3.0 NaN NaN NaN 
D 3.0 3.0 NaN NaN NaN 
E 3.0 3.0 NaN NaN NaN 

我有什麼做的就是這個吧?

0 1 2 3  4 
A 3 3 2 1 NaN 
B 3 3 2 1 NaN 
C 3 3 2 1 NaN 
D 3 3 2 1 NaN 
E 3 3 2 1 NaN 

回答

3

使用fill_value論點DataFrame.add method的:

fill_value:無或浮點值,默認無填充缺失(NAN) 值這個價值。如果兩個DataFrame位置都丟失,則 結果將丟失。

df.add(df1, fill_value=0) 
Out: 
    0 1 2 3 4 
A 3.0 3.0 2.0 1.0 NaN 
B 3.0 3.0 2.0 1.0 NaN 
C 3.0 3.0 2.0 1.0 NaN 
D 3.0 3.0 2.0 1.0 NaN 
E 3.0 3.0 2.0 1.0 NaN 
+1

使用'.add'方法在'+'標誌的優點是很酷吧? –