sampleBy (DataFrame)

Mengembalikan sampel yang di stratifikasi tanpa penggantian berdasarkan pecahan yang diberikan pada setiap stratum.

Sintaksis

sampleBy(col: "ColumnOrName", fractions: Dict[Any, float], seed: Optional[int] = None)

Parameter-parameternya

Parameter Tipe Deskripsi
col Kolom atau str kolom yang menentukan strata.
fractions kamus pengambilan sampel fraksi untuk setiap stratum. Jika stratum tidak ditentukan, kami memperlakukan pecahannya sebagai nol.
seed int, opsional benih acak.

Pengembalian Barang

DataFrame baru yang mewakili sampel yang di stratifikasi.

Examples

from pyspark.sql import functions as sf
dataset = spark.range(0, 100, 1, 5).select((sf.col("id") % 3).alias("key"))
sampled = dataset.sampleBy("key", fractions={0: 0.1, 1: 0.2}, seed=0)
sampled.groupBy("key").count().orderBy("key").show()
# +---+-----+
# |key|count|
# +---+-----+
# |  0|    4|
# |  1|    9|
# +---+-----+

dataset.sampleBy(sf.col("key"), fractions={2: 1.0}, seed=0).count()
# 33