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


Python pyspark Series.sample用法及代码示例


本文简要介绍 pyspark.pandas.Series.sample 的用法。

用法:

Series.sample(n: Optional[int] = None, frac: Optional[float] = None, replace: bool = False, random_state: Optional[int] = None) → pyspark.pandas.series.Series

从对象的轴返回项目的随机样本。

请通过指定frac 参数使用命名参数调用此函数。

您可以使用random_state 来获得重现性。但是,请注意,与 pandas 不同,在 pandas-on-Spark/Spark 中指定种子并不能保证采样的行将被固定。结果集不仅取决于种子,还取决于数据在机器之间的分布方式,以及涉及 shuffle 操作时的网络随机性。即使在最简单的情况下,结果集也将取决于系统的 CPU 核心数。

参数

n整数,可选

要返回的项目数。目前不支持此函数。请改用 frac。

frac浮点数,可选

要返回的轴项目的分数。

replace布尔值,默认为 False

有或没有更换的样品。

random_state整数,可选

随机数生成器的种子(如果是 int)。

返回

系列或DataFrame

一个与调用者类型相同的新对象,其中包含采样项。

例子

>>> df = ps.DataFrame({'num_legs': [2, 4, 8, 0],
...                    'num_wings': [2, 0, 0, 0],
...                    'num_specimen_seen': [10, 2, 1, 8]},
...                   index=['falcon', 'dog', 'spider', 'fish'],
...                   columns=['num_legs', 'num_wings', 'num_specimen_seen'])
>>> df  
        num_legs  num_wings  num_specimen_seen
falcon         2          2                 10
dog            4          0                  2
spider         8          0                  1
fish           0          0                  8

DataFrame 的随机 25% 样本。请注意,我们使用random_state 来确保示例的可重复性。

>>> df.sample(frac=0.25, random_state=1)  
        num_legs  num_wings  num_specimen_seen
falcon         2          2                 10
fish           0          0                  8

Series df['num_legs'] 中提取 25% 的随机元素,并进行替换,因此相同的项目可能会出现多次。

>>> df['num_legs'].sample(frac=0.4, replace=True, random_state=1)  
falcon    2
spider    8
spider    8
Name: num_legs, dtype: int64

目前不支持指定要退回的确切商品数量。

>>> df.sample(n=5)  
Traceback (most recent call last):
    ...
NotImplementedError: Function sample currently does not support specifying ...

相关用法


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