2016-08-08 7 views
-3

私は以下のようにパンダにデータフレームを持っています。 row-name = "Total"という行を追加しようとしています。これは各列の合計です。私は次のコードを使用しています:df.loc ["合計"] = df.sum(軸= 1)pandas:各列の合計がNaN値になりますか?

各列の合計としてNaNを取得しています。任意のアイデアなぜ、どのようにそれを解決するには?

dataframe with "Total" row

+0

使用 'df.loc ["Total"] = df.astype(float) .sum() 'または' df.loc ["Total"] = df.sum() ' – jezrael

+0

あなたの例を示すために写真ではなくテキストフォーマットを使用してください。 –

+0

ありがとう、df.astype()関数@ jezrael –

答えて

0

用途:

df.loc["Total"] = df.sum() 

またはFLOATする列の最初の文字列値を変換する必要がある場合:

df.loc["Total"] = df.astype(float).sum() 

サンプル:

df = pd.DataFrame({'A':[1,2,3], 
        'B':[4,5,6], 
        'C':[7,8,9], 
        'D':[1,3,5], 
        'E':[5,3,6], 
        'F':[7,4,3]}) 

print (df) 
    A B C D E F 
0 1 4 7 1 5 7 
1 2 5 8 3 3 4 
2 3 6 9 5 6 3 

df.loc["Total"] = df.sum() 
print (df) 
     A B C D E F 
0  1 4 7 1 5 7 
1  2 5 8 3 3 4 
2  3 6 9 5 6 3 
Total 6 15 24 9 14 14 
+0

私の答えが役に立ちましたら、[承諾](http://meta.stackexchange.com/a/5235/295067)それを忘れないでください。ありがとう。 – jezrael

関連する問題