当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyspark DataFrame.itertuples用法及代码示例


本文简要介绍 pyspark.pandas.DataFrame.itertuples 的用法。

用法:

DataFrame.itertuples(index: bool = True, name: Optional[str] = 'PandasOnSpark') → Iterator[Tuple]

将 DataFrame 行作为命名元组进行迭代。

参数

index布尔值,默认为真

如果为 True,则返回索引作为元组的第一个元素。

namestr 或无,默认 “PandasOnSpark”

返回的命名元组的名称或 None 以返回常规元组。

返回

迭代器

用于迭代 DataFrame 中每一行的命名元组的对象,第一个字段可能是索引,后续字段是列值。

注意

如果列名是无效的 Python 标识符、重复或以下划线开头,则列名将被重命名为位置名称。在 python 版本 < 3.7 上,为 DataFrames 返回具有大量列 (>254) 的常规元组。

例子

>>> df = ps.DataFrame({'num_legs': [4, 2], 'num_wings': [0, 2]},
...                   index=['dog', 'hawk'])
>>> df
      num_legs  num_wings
dog          4          0
hawk         2          2
>>> for row in df.itertuples():
...     print(row)
...
PandasOnSpark(Index='dog', num_legs=4, num_wings=0)
PandasOnSpark(Index='hawk', num_legs=2, num_wings=2)

通过将 index 参数设置为 False,我们可以将索引作为元组的第一个元素删除:

>>> for row in df.itertuples(index=False):
...     print(row)
...
PandasOnSpark(num_legs=4, num_wings=0)
PandasOnSpark(num_legs=2, num_wings=2)

使用name 参数集,我们为产生的命名元组设置自定义名称:

>>> for row in df.itertuples(name='Animal'):
...     print(row)
...
Animal(Index='dog', num_legs=4, num_wings=0)
Animal(Index='hawk', num_legs=2, num_wings=2)

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.pandas.DataFrame.itertuples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。