Pandas DataFrame DataFrame.sum() 関数
-
pandas.DataFrame.sum()
の構文 -
コード例:
DataFrame.sum()
列軸に沿った和を計算するメソッド -
コード例:
DataFrame.sum()
行軸に沿った和を求めるメソッド -
コード例:
DataFrame.sum()
NaN
の値を無視して和を求めるメソッド -
コード例:
DataFrame.sum()
メソッドでmin_count
を設定する
Python Pandas DataFrame.sum()
関数は、DataFrame
オブジェクトの値の合計を指定した軸上で計算します。
pandas.DataFrame.sum()
の構文
DataFrame.sum(
axis=None, skipna=None, level=None, numeric_only=None, min_count=0, **kwargs
)
パラメータ
axis |
行(axis=0 )または列(axis=1 )に沿って和を求める |
skipna |
論理値。NaN の値を除外するか (skipna=True )、または NaN の値を含めるか (skipna=False )。 |
level |
軸が MultiIndex の場合、特定のレベルに沿ってカウントします。 |
numeric_only |
ブール値。numeric_only=True の場合は、float 、int 、boolean カラムのみをインクルードします。 |
min_count |
整数です。和を計算するための最小の 非 NaN 値の数を指定します。この条件が満たされない場合、和は NaN となります。 |
**kwargs |
関数への追加のキーワード引数 |
戻り値
level
が指定されていない場合は、指定した軸の値の和の Series
を返し、そうでない場合は和の値の DataFrame
を返します。
コード例:DataFrame.sum()
列軸に沿った和を計算するメソッド
import pandas as pd
df = pd.DataFrame({'X':
[1,2,3,4,5],
'Y': [1, 2, 3,4,5],
'Z': [3,4,5,6,3]})
print("DataFrame:")
print(df)
sums=df.sum()
print("Column-wise Sum:")
print(sums)
出力:
DataFrame:
X Y Z
0 1 1 3
1 2 2 4
2 3 3 5
3 4 4 6
4 5 5 3
Column-wise Sum:
X 15
Y 15
Z 21
dtype: int64
これはすべての列 X
、Y
、Z
の合計を計算し、最終的に各列の合計を含む Series
オブジェクトを返します。
Pandas の DataFrame
の特定の列の合計を求めるには、その列に対してのみ sum()
関数を呼び出す必要があります。
import pandas as pd
df = pd.DataFrame({'X':
[1,2,3,4,5],
'Y': [1, 2, 3,4,5],
'Z': [3,4,5,6,3]})
print("DataFrame:")
print(df)
sums=df["Z"].sum()
print("Sum of values of Z-column:")
print(sums)
出力:
DataFrame:
X Y Z
0 1 1 3
1 2 2 4
2 3 3 5
3 4 4 6
4 5 5 3
Sum of values of Z-column:
21
これは DataFrame
の Z
列の値の合計のみを返します。
コード例:DataFrame.sum()
行軸に沿った和を求めるメソッド
import pandas as pd
df = pd.DataFrame({'X':
[1,2,3,4,5],
'Y': [1, 2, 3,4,5],
'Z': [3,4,5,6,3]})
print("DataFrame:")
print(df)
sums=df.sum(axis=1)
print("Row-wise sum:")
print(sums)
出力:
DataFrame:
X Y Z
0 1 1 3
1 2 2 4
2 3 3 5
3 4 4 6
4 5 5 3
Row-wise sum:
0 5
1 8
2 11
3 14
4 13
dtype: int64
すべての行の合計を計算し、最後に各行の合計を含む Series
オブジェクトを返します。
Pandas の DataFrame
の特定の行の合計を求めるには、その特定の行に対してのみ sum()
関数を呼び出す必要があります。
import pandas as pd
df = pd.DataFrame({'X':
[1,2,3,4,5],
'Y': [1, 2, 3,4,5],
'Z': [3,4,5,6,3]})
print("DataFrame:")
print(df)
sum_3=df.iloc[[2]].sum(axis=1)
print("Sum of values of 3rd Row:")
print(sum_3)
出力:
DataFrame:
X Y Z
0 1 1 3
1 2 2 4
2 3 3 5
3 4 4 6
4 5 5 3
Sum of values of 3rd Row:
2 11
dtype: int64
これは DataFrame
の 3 行目の値の合計のみを返します。
インデックスに基づいて行を選択するには iloc
メソッドを使用します。
コード例:DataFrame.sum()
NaN
の値を無視して和を求めるメソッド
パラメータ skipna
のデフォルト値、すなわち skipna=True
を用いて、指定された軸に沿った DataFrame
の合計を求めます。
import pandas as pd
df = pd.DataFrame({'X':
[1,None,3,4,5],
'Y': [1, None, 3,None,5],
'Z': [3,4,5,6,3]})
print("DataFrame:")
print(df)
sums=df.sum()
print("Column-wise Sum:")
print(sums)
出力:
DataFrame:
X Y Z
0 1.0 1.0 3
1 NaN NaN 4
2 3.0 3.0 5
3 4.0 NaN 6
4 5.0 5.0 3
Column-wise Sum:
X 13.0
Y 9.0
Z 21.0
dtype: float64
skipna=True
を指定すると、データフレームに NaN
値がある場合は NaN
値の和を取得します。
import pandas as pd
df = pd.DataFrame({'X':
[1,None,3,4,5],
'Y': [1, None, 3,None,5],
'Z': [3,4,5,6,3]})
print("DataFrame:")
print(df)
sums=df.sum(skipna=False)
print("Column-wise Sum:")
print(sums)
出力:
DataFrame:
X Y Z
0 1.0 1.0 3
1 NaN NaN 4
2 3.0 3.0 5
3 4.0 NaN 6
4 5.0 5.0 3
Column-wise Sum:
X NaN
Y NaN
Z 21.0
dtype: float64
ここでは、列 X
と列 Y
の和の NaN
値を取得しています。
コード例:DataFrame.sum()
メソッドで min_count
を設定する
import pandas as pd
df = pd.DataFrame({'X':
[1,None,3,4,5],
'Y': [1, None, 3,None,5],
'Z': [3,4,5,6,3]})
print("DataFrame:")
print(df)
sums=df.sum(min_count=4)
print("Column-wise Sum:")
print(sums)
出力:
DataFrame:
X Y Z
0 1.0 1.0 3
1 NaN NaN 4
2 3.0 3.0 5
3 4.0 NaN 6
4 5.0 5.0 3
Column-wise Sum:
X 13.0
Y NaN
Z 21.0
dtype: float64
ここでは、列 Y
の合計の NaN
値を取得します。列 Y
には 3
の非 NaN
値しかなく、パラメータ min_count
の値よりも小さい値です。
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn