各階層で指定された分数に基づいて、置換せずに階層化されたサンプルを返します。
構文
sampleBy(col, fractions, seed=None)
パラメーター
| パラメーター | タイプ | 説明 |
|---|---|---|
col |
str | strata を定義する列。 |
fractions |
辞書 | 各階層のサンプリング分数。 指定されていない Strata は、0 の分数を持つものとして扱われます。 |
seed |
int、省略可能 | ランダム シード。 |
返品
DataFrame
例示
from pyspark.sql import functions as sf
dataset = spark.range(0, 100, 1, 5).select((sf.col("id") % 3).alias("key"))
sampled = dataset.stat.sampleBy("key", fractions={0: 0.1, 1: 0.2}, seed=0)
sampled.groupBy("key").count().orderBy("key").show()
# +---+-----+
# |key|count|
# +---+-----+
# | 0| 4|
# | 1| 9|
# +---+-----+