ホームページ >バックエンド開発 >Python チュートリアル >Pandas の `map`、`applymap`、および `apply` メソッドはどのように異なりますか?

Pandas の `map`、`applymap`、および `apply` メソッドはどのように異なりますか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-09 12:20:12891ブラウズ

How Do Pandas' `map`, `applymap`, and `apply` Methods Differ?

Pandas の Map、Applymap、Apply メソッドの違いを理解する

Pandas でベクトル化を使用する場合、これらの違いを理解することが重要ですmap、applymap、および apply メソッドの間。これらのメソッドは、関数を要素単位または行/列単位で DataFrame および Series に適用する柔軟な方法を提供します。

Map:
Map は、要素単位の操作用に設計された Series メソッドです。 。これは関数を受け取り、それをシリーズ内の各要素に適用します。次の例を考えてみましょう。

import pandas as pd

series = pd.Series([1, 2, 3, 4, 5])
squared_series = series.map(lambda x: x ** 2)
print(squared_series)

出力:

0    1
1    4
2    9
3   16
4   25
dtype: int64

Applymap:
Applymap は、全体に対して要素ごとの操作を実行する DataFrame メソッドです。データフレーム。指定された関数を DataFrame 内の個々の要素に適用します:

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

formatted_dataframe = dataframe.applymap(lambda x: f'{x:.2f}')
print(formatted_dataframe)

Output:

   A   B
0  1.00  4.00
1  2.00  5.00
2  3.00  6.00

Apply:
map や applymap とは異なり、apply DataFrame の行または列を操作します。これは関数を受け取り、指定された軸パラメータに応じて各行または列に適用します。

# Apply function to each row
row_max = dataframe.apply(lambda row: row.max(), axis=1)
print(row_max)

# Apply function to each column
col_min = dataframe.apply(lambda col: col.min(), axis=0)
print(col_min)

出力:

0    3
1    5
2    6
dtype: int64

A    1
B    4
dtype: int64

使用上の考慮事項:

  • 要素ごとの操作にマップを使用しますシリーズ。
  • DataFrame の要素ごとの操作には applymap を使用します。
  • DataFrame の行または列ごとの操作には applymap を使用します。

以上がPandas の `map`、`applymap`、および `apply` メソッドはどのように異なりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。