Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
bir öğesinin sayısal sütunlarının DataFrameyaklaşık niceliklerini hesaplar.
Bu algoritmanın sonucu aşağıdaki belirlenimci sınıra sahiptir: N öğesi varsa DataFrame ve nicel p değerin hata errolasılığına kadar olmasını istersek, xDataFrame (p _ N) değerine yakın olması için algoritma öğesinden bir örnek x döndürür. Daha kesin olarak, floor((p - err) _ N) <= rank(x) <= ceil((p + err) \* N).
Bu yöntem, bazı hız iyileştirmeleri ile Greenwald-Khanna algoritmasının bir varyasyonunu uygular.
Sözdizimi
approxQuantile(col, probabilities, relativeError)
Parametreler
| Parametre | Türü | Açıklama |
|---|---|---|
col |
str, list veya deuple | Tek bir sütun adı veya birden çok sütun için bir ad listesi. |
probabilities |
float listesi veya tanımlama grubu | Nicel olasılıkların listesi. Her sayı [0, 1] aralığında bir float olmalıdır. Örneğin, en az 0,0, ortanca değer 0,5 ve en fazla 1,0'dır. |
relativeError |
yüzmek | Elde etmek için göreli hedef duyarlık (>= 0). Sıfır olarak ayarlanırsa, tam niceller hesaplanır ve bu çok pahalı olabilir. 1'den büyük değerler 1 ile aynı sonucu verir. |
İadeler
list
Bir dizeyse col , kayanların listesini döndürür. Dize col listesi veya demet ise, kayan liste listesini döndürür.
Notlar
Hesaplamadan önce sayısal sütunlarda null değerler yoksayılır. Yalnızca null değerler içeren sütunlar için boş bir liste döndürülür.
Örnekler
Tek bir sütun için nicelleri hesaplama.
data = [(1,), (2,), (3,), (4,), (5,)]
df = spark.createDataFrame(data, ["values"])
df.stat.approxQuantile("values", [0.0, 0.5, 1.0], 0.05)
# [1.0, 3.0, 5.0]
Birden çok sütun için nicelleri hesaplama.
data = [(1, 10), (2, 20), (3, 30), (4, 40), (5, 50)]
df = spark.createDataFrame(data, ["col1", "col2"])
df.stat.approxQuantile(["col1", "col2"], [0.0, 0.5, 1.0], 0.05)
# [[1.0, 3.0, 5.0], [10.0, 30.0, 50.0]]
Null değerleri işleme.
data = [(1,), (None,), (3,), (4,), (None,)]
df = spark.createDataFrame(data, ["values"])
df.stat.approxQuantile("values", [0.0, 0.5, 1.0], 0.05)
# [1.0, 3.0, 4.0]