【Python】pandasでデータフレームの減算・引き算を簡単に行う方法

pandasは、Pythonのデータ解析ライブラリの中でも重要な位置を占めるツールです。pandasを使うと、データフレームという形式で表形式のデータを扱うことができます。データフレームには、行と列があり、それぞれに対して様々な操作を行うことができます。本記事では、pandasを使ってデータフレームの減算・引き算を簡単に行う方法について説明します。

pandasでのデータフレーム減算の基本

データフレームの減算は、列同士や行同士の要素ごとの差分を求めることができます。pandasを使うと、これらの演算を簡単に行うことができます。

列同士の減算方法

データフレームの列同士の減算を行うには、sub()メソッドを使用します。例えば、以下のようなデータフレームを考えます。

import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})

print(df)

このデータフレームを使って、列Aと列Bの減算を行う場合は、次のようにします。

result = df['A'].sub(df['B'])

print(result)

この場合、resultには以下のようなSeriesオブジェクトが格納されます。

0   -3
1   -3
2   -3
dtype: int64

このSeriesオブジェクトは、要素ごとの減算の結果を含んでいます。

行同士の減算方法

データフレームの行同士の減算を行うには、sub()メソッドを使用します。例えば、以下のようなデータフレームを考えます。

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
print(df)

このデータフレームを使って、行0と行1の減算を行う場合は、次のようにします。

result = df.iloc[0].sub(df.iloc[1])

print(result)

この場合、resultには以下のようなSeriesオブジェクトが格納されます。

A   -1
B   -1
dtype: int64

このSeriesオブジェクトは、要素ごとの減算の結果を含んでいます。

減算結果を新しい列として追加する方法

データフレームの減算結果を新しい列として追加するには、データフレームに対して直接演算を行い、その結果を新しい列に代入することができます。例えば、以下のようなデータフレームを考えます。

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})

print(df)

このデータフレームに対して、列Aと列Bの減算結果を新しい列Cとして追加する場合は、次のようにします。

df['C'] = df['A'].sub(df['B'])

print(df)

この場合、C列には以下のような値が格納されます

   A  B  C
0  1  4 -3
1  2  5 -3
2  3  6 -3

このように、新しい列に対して直接演算を行うことで、データフレームの任意の列に対して減算を行うことができます。

まとめ

本記事では、pandasを使ってデータフレームの減算・引き算を簡単に行う方法について説明しました。pandasを使うことで、データフレームの列同士や行同士の要素ごとの差分を求めることができます。また、減算結果を新しい列として追加することも簡単に行うことができます。pandasを使うことで、膨大な量のデータを効率的に処理することができるため、データ解析においては欠かせないツールの一つです。