當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python pyspark Series.spark.apply用法及代碼示例

本文簡要介紹 pyspark.pandas.Series.spark.apply 的用法。

用法:

spark.apply(func: Callable[[pyspark.sql.column.Column], pyspark.sql.column.Column]) → ps.Series

應用一個接受並返回 Spark 列的函數。它允許本地應用 Spark 函數和列 API,其中 Spark 列在 Series 或 Index 中內部使用。

注意

它強製丟失索引並最終使用默認索引。最好使用 Series.spark.transform():meth:`DataFrame.spark.apply 並指定 inedx_col

注意

它不要求輸入和輸出具有相同的長度。然而,它需要在內部創建一個新的DataFrame,這將需要設置compute.ops_on_diff_frames來計算,即使具有相同的起源DataFrame,這是昂貴的,而Series.spark.transform()不需要它。

參數

func函數

使用 Spark 列對數據應用函數的函數。

返回

Series

拋出

ValueError如果函數的輸出不是 Spark 列。

例子

>>> from pyspark import pandas as ps
>>> from pyspark.sql.functions import count, lit
>>> df = ps.DataFrame({"a": [1, 2, 3], "b": [4, 5, 6]}, columns=["a", "b"])
>>> df
   a  b
0  1  4
1  2  5
2  3  6
>>> df.a.spark.apply(lambda c: count(c))
0    3
Name: a, dtype: int64
>>> df.a.spark.apply(lambda c: c + df.b.spark.column)
0    5
1    7
2    9
Name: a, dtype: int64

相關用法


注:本文由純淨天空篩選整理自spark.apache.org大神的英文原創作品 pyspark.pandas.Series.spark.apply。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。