パンダのapply関数の使い方は何ですか?
pandasのapply関数は、データフレームやシリーズのデータを行ごとまたは列ごとに処理するために使用されます。この関数は関数を引数として受け取り、その関数を各行または各列のデータに適用します。
apply関数の使い方は一般的に2つあります。
- DataFrameの各行や列に関数を適用するには、axisパラメータを指定して行うか列を選択することができます。デフォルトでは、axisが0の場合は各列に関数を適用し、axisが1の場合は各行に関数を適用します。
例えば、DataFrameの各列の合計を求めることができます。 - pandasをpdとしてインポートします。df = pd.DataFrame({‘A’: [1, 2, 3], ‘B’: [4, 5, 6]})
def sum_column(column):
return column.sum()result = df.apply(sum_column)
print(result) - 結果:
- A 6B 15
dtype: int64
A 6
B 15
データ型:int64
- DataFrameやSeriesの各要素に関数を適用するには、axisパラメータをNoneに設定することで実現できます。例えば、DataFrameの各要素を2乗する操作を行うことができます。
- import pandas as pddf = pd.DataFrame({‘A’: [1, 2, 3], ‘B’: [4, 5, 6]})
def square(x):
return x**2result = df.applymap(square)
print(result) - 出力:
- 1 16
4 25
9 36
apply関数を使用する際には、各行や列のデータに対して反復処理されることに注意する必要があります。そのため、apply関数を使用する際には、パフォーマンスを向上させるために、ループなどの時間がかかる操作を避けるようにすることが重要です。