2017-12-03 5 views
1

不一致の列/インデックスを持つ2つのDataFramesを追加しています。しかし、fill_valuesパラメータを使用していたにもかかわらず、結果に予期しない欠損値があります。私はPythonを初めて使っているので、ここで何が起きているのか理解できるように身体を導くことができれば、本当に役に立ちます。ここに私のコードは、(私はAnaconda3を使用しています)です:`DataFrame.add`はfill_valueを使用していても欠損値を作成します

df1 = pd.DataFrame(np.arange(4).reshape((2,2)), 
     index=list('ab'), columns=list('xy')) 
df2 = pd.DataFrame(np.arange(3).reshape((3,1)), 
     index=list('abc'), columns=list('y')) 
print(df1.add(df2, fill_value=0)) 
    x y 
a 0.0 1.0 
b 2.0 4.0 
c NaN 2.0 
print(df2.add(df1, fill_value=0)) 
    x y 
a 0.0 1.0 
b 2.0 4.0 
c NaN 2.0 

答えて

0

docsノート、他のデータフレーム+と同等

が、の1で不足しているデータの fill_valueを置換するサポート付き入力。

(c、X)がDataFrameに存在せず、この操作で(行、列)の組が使用されているため、NaNが返されます。

この問題を回避するには、ちょうど

df2.add(df1, fill_value=0.).fillna(value=0.) 
だろう
関連する問題