深入研究Pandas 中「map」、「applymap」和「apply」的細微差別
在資料操作領域, Pandas 庫是一個基石,提供了大量有效處理表格資料的方法。其中,「map」、「applymap」和「apply」非常重要。然而,它們的細微差別有時會讓使用者感到困惑。
區分「apply」和「applymap」
雖然這兩種方法都在 DataFrame 上操作,但它們的主要區別在於粒度他們的應用程式。 'apply' 函數按行或按列,能夠提取特定值或對整個行或列執行計算。
另一方面,'applymap' 在元素方面工作,處理DataFrame 中的每個單獨的單元格值。當您需要對 DataFrame 的每個元素套用函數(例如格式化或轉換資料類型)時,這特別有用。
為 Series 引入「map」
Series 是 DataFrame 的一維等價物,它也擁有自己的逐元素函數應用方法:「map」。與整個 DataFrame 進行操作的「applymap」不同,「map」是專為 Series 設計的。
闡明用法的範例
要說明這些方法,請考慮以下內容DataFrame:
b | d | e | |
---|---|---|---|
Utah | -0.03 | 1.08 | 1.28 |
Ohio | 0.65 | 0.83 | -1.55 |
Texas | 0.51 | -0.88 | 0.20 |
Oregon | -0.49 | -0.48 | -0.31 |
使用“apply”,我們可以計算範圍(最大值減去每列的
df.apply(lambda x: x.max() - x.min())
使用'applymap',我們可以將每個浮點值格式化為字串:
df.applymap(lambda x: '%.2f' % x)
最後,在 ' 上使用 'map' DataFrame 的 e' 欄位:
df['e'].map(lambda x: '%.2f' % x)
以上是Pandas 的「map」、「applymap」和「apply」在資料操作上有何不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!