【Python】pandasでデータの和を簡単に計算する方法

はじめに

pandasは、Pythonのデータ分析ライブラリの1つで、データの加工や集計に便利な機能が多く備わっています。本記事では、pandasを使ってデータの和を簡単に計算する方法を解説します。

pandasの基本的な使い方

まずは、pandasの基本的な使い方から確認しましょう。pandasでは、データを「DataFrame」という形式で扱います。以下のように、DataFrameを作成することができます。

import pandas as pd
# データの準備
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)
print(df)

# 出力:

   A  B  C
0  1  4  7
1  2  5  8
2  3  6  9

このように、辞書形式でデータを作成し、pd.DataFrame()に渡すことでDataFrameを作成することができます。

列ごとのデータ和の計算方法

次に、列ごとのデータ和の計算方法を紹介します。pandasでは、列ごとに計算をすることができます。列ごとの和は、以下のように計算できます。

import pandas as pd
# データの準備
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)

# 列ごとの和を計算
sum_by_col = df.sum()
print(sum_by_col)

# 出力:

A     6
B    15
C    24
dtype: int64

ここでは、DataFrameのsum()メソッドを使って、列ごとの和を計算しています。出力結果から、列Aの和は1+2+3=6、列Bの和は4+5+6=15、列Cの和は7+8+9=24となっています。

行ごとのデータ和の計算方法

次に、行ごとのデータ和の計算方法を紹介します。pandasでは、行ごとに計算をすることもできます。行ごとの和は、以下のように計算できます。

import pandas as pd
# データの準備
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)

# 行ごとの和を計算
sum_by_row = df.sum(axis=1)
print(sum_by_row)

# 出力:

0    12
1    15
2    18
dtype: int64

ここでは、sum()メソッドの引数にaxis=1を指定することで、行ごとの和を計算しています。出力結果から、行0の和は1+4+7=12、行1の和は2+5+8=15、行2の和は3+6+9=18となっています。

複数のカラムや行に対する和の計算

複数のカラムや行に対する和の計算方法を紹介します。複数のカラムや行に対して和を計算する場合は、以下のように記述します。

import pandas as pd
# データの準備
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)

# 複数の列の和を計算
sum_by_cols = df[['A', 'B']].sum()
print(sum_by_cols)

# 複数の行の和を計算
sum_by_rows = df.loc[[0, 2]].sum()
print(sum_by_rows)

# 出力:

A     6
B    15
dtype: int64
A     4
B    10
C    16
dtype: int64

ここでは、列Aと列Bの和を計算する場合は、df[[‘A’, ‘B’]]として、複数の列名をリスト形式で指定しています。また、行0と行2の和を計算する場合は、df.loc[[0, 2]]として、複数の行名をリスト形式で指定しています。

実践例:具体的なデータを使ったデータ和の計算手順

最後に、具体的なデータを使ったデータ和の計算手順を紹介します。データの列ごとの和、行ごとの和、複数のカラムや行に対する和を計算する場合は、以下のように記述します。

import pandas as pd
# データの準備
data = {'Name': ['Taro Yamada', 'Hanako Sato', 'Takeshi Tanaka'],
        'Age': [20, 25, 30],
        'Height (cm)': [175, 163, 180]}
df = pd.DataFrame(data)

# 列ごとの和を計算
sum_by_col = df[['Age', 'Height (cm)']].sum()
print(sum_by_col)

# 行ごとの和を計算
sum_by_row = df[['Age', 'Height (cm)']].sum(axis=1)
print(sum_by_row)

# 複数の列の和を計算
sum_by_cols = df[['Age', 'Height (cm)']].sum()
print(sum_by_cols)

# 複数の行の和を計算
sum_by_rows = df.loc[[0, 2], ['Age', 'Height (cm)']].sum()
print(sum_by_rows)

# 出力:

Age            75
Height (cm)    518
dtype: int64
0    195
1    188
2    210
dtype: int64
Age            75
Height (cm)    518
dtype: int64
Age            50
Height (cm)    355
dtype: int64

ここでは、df[[‘Age’, ‘Height (cm)’]]として、複数の列を指定しています。また、df.loc[[0, 2], [‘Age’, ‘Height (cm)’]]として、複数の行と列を指定しています。

まとめ

pandasを使って、データの和を簡単に計算する方法を解説しました。列ごとの和、行ごとの和、複数のカラムや行に対する和を計算する方法を学びました。これらの計算方法を使えば、データの集計や加工が簡単に行えます。ぜひ、実際のデータで試してみてください。