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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。