PySpark DataFrame 的 foreach(~)
方法將 DataFrame 的每一行作為 Row
對象進行循環,並將給定函數應用於該行。
警告
以下是 foreach(~)
的一些限製:
-
Spark中的
foreach(~)
方法是在工作節點而不是Driver程序中調用的。這意味著,如果我們在函數內執行print(~)
,我們將無法在會話或筆記本中看到打印結果,因為結果打印在工作節點中。 -
行是隻讀的,因此您無法更新行的值。
鑒於這些限製,foreach(~)
方法主要用於將每行的一些信息記錄到本地計算機或外部數據庫。
參數
1. f
| function
應用於 DataFrame 的每一行 (Row
) 的函數。
返回值
什麽也沒有返回。
例子
考慮以下PySpark DataFrame:
df = spark.createDataFrame([["Alex", 20], ["Bob", 30]], ["name", "age"])
df.show()
+----+---+
|name|age|
+----+---+
|Alex| 20|
| Bob| 30|
+----+---+
要迭代每一行並應用一些自定義函數:
# This function fires in the worker node
def f(row):
print(row.name)
df.foreach(f)
在這裏,row.name
打印在工作節點中,因此您不會在驅動程序中看到任何輸出。
相關用法
- Python PySpark DataFrame filter方法用法及代碼示例
- Python Pandas DataFrame first_valid_index方法用法及代碼示例
- Python Pandas DataFrame floordiv方法用法及代碼示例
- Python Pandas DataFrame filter方法用法及代碼示例
- Python Pandas DataFrame first方法用法及代碼示例
- Python Pandas DataFrame fillna方法用法及代碼示例
- Python PySpark DataFrame fillna方法用法及代碼示例
- Python Pandas DataFrame empty屬性用法及代碼示例
- Python Pandas DataFrame pop方法用法及代碼示例
- Python Pandas DataFrame nsmallest方法用法及代碼示例
- Python Pandas DataFrame sample方法用法及代碼示例
- Python Pandas DataFrame items方法用法及代碼示例
- Python Pandas DataFrame max方法用法及代碼示例
- Python Pandas DataFrame swaplevel方法用法及代碼示例
- Python Pandas DataFrame agg方法用法及代碼示例
- Python Pandas DataFrame copy方法用法及代碼示例
- Python Pandas DataFrame pow方法用法及代碼示例
- Python Pandas DataFrame insert方法用法及代碼示例
- Python Pandas DataFrame lt方法用法及代碼示例
- Python Pandas DataFrame all方法用法及代碼示例
- Python Pandas DataFrame unstack方法用法及代碼示例
- Python Pandas DataFrame mean方法用法及代碼示例
- Python Pandas DataFrame tz_convert方法用法及代碼示例
- Python Pandas DataFrame isin方法用法及代碼示例
- Python PySpark DataFrame collect方法用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 PySpark DataFrame | foreach method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。