ターゲット計算
私はほんの数日間パンダを使用していると、複数の列の平均値を計算するために.loc
と.mean()
を使用しようとしています、と表現します列の下の新しい行の値。
私の試みは
単一の列の平均を見つけ、次のコードを使用して...:
df.loc['Average', 'Column1'] = df['Column1'].mean()
は^ ...出力としてあります期待される。しかし
、私のような、の平均値を見つけるために、追加の列を追加しようとすると:
KeyError: ('Column1', 'Column2')
私が想定している:私は次のエラーを取得する
df.loc['Average', 'Column1', 'Column2'] = df['Column1', 'Column2'].mean()
を非常に簡単な解決策があります - 私はこの段階でかなり新しいです。
予想される出力:
# ...... is replaced with numbers
Column1 Column2
1 ....... .......
2 ....... .......
3 ....... .......
... ....... .......
Average #SomeFloat #AnotherFloat
大変ありがとうございます。そうする必要がある理由はありますか? – LearningToPython
はい。あなたがそれをしなければ、これはタプルとして扱われ、したがって、pythonのように、パンダの複数のインデックスは、カンマがタプルを作成します。これがkeyErrorを見る理由です。つまり、 '(Column1、Column2)'はマルチインデックスとして扱われ、データフレームには存在しません。 – Psidom
ありがとう、素晴らしい説明:) – LearningToPython