RangeFractile - kod ve grafik fonksiyonu
RangeFractile(), bir sayı aralığının n. fractile değerine (yüzdelik dilim) karşılık gelen değeri döndürür.
Söz Dizimi:
RangeFractile(fractile, first_expr[, Expression])
Dönüş verileri türü: sayısal
Bağımsız Değişkenler:
Bu fonksiyonun bağımsız değişkeni, kendi içinde bir değer listesi döndüren kayıt arası fonksiyonlarını içerebilir.
- fractile: Hesaplanacak fraktile (kesir olarak ifade edilen yüzdelik dilim) karşılık gelen, 0 ile 1 arasında bir sayı.
- first_expr: Hesaplanacak verileri içeren ifade veya alan.
- Expression: Hesaplanacak veri aralığını içeren isteğe bağlı ifadeler veya alanlar.
Örnekler:
Örnek | Sonuç |
---|---|
RangeFractile (0.24,1,2,4,6) | 1,72 değerini döndürür |
RangeFractile(0.5,1,2,3,4,6) |
3 değerini döndürür |
RangeFractile (0.5,1,2,5,6) |
3,5 değerini döndürür |
Örnek: (ifade kullanarak)
RangeFractile (0.5, Above(Sum(MyField),0,3))
Bu örnekte, Above() kayıt arası fonksiyonu, isteğe bağlı offset ve count bağımsız değişkenlerini içermektedir. Böylece, aralık fonksiyonlarının herhangi biri için giriş olarak kullanılabilecek bir sonuç aralığı üretilir. Bu durumda, Above(Sum(MyField),0,3) fonksiyonu, geçerli satır ve üzerindeki iki satır için MyField değerlerini döndürür. Bu değerler RangeFractile() fonksiyonu için giriş değerlerini sağlar. O halde, aşağıdaki tabloda alttaki satır için bu, RangeFractile(0.5, 3,4,6) ifadesinin (yani, 3, 4 ve 6 serisi için 0,5 fraktilinin hesaplanması) eşdeğeridir. Aşağıdaki tabloda yer alan ilk iki satırda, geçerli satırın üzerinde satır bulunmadığı durumda aralıktaki değerlerin sayısı buna göre azaltılır. Diğer kayıt arası fonksiyonları için benzer sonuçlar üretilir.
MyField | RangeFractile(0.5, Above(Sum(MyField),0,3)) |
---|---|
1 | 1 |
2 | 1.5 |
3 | 2 |
4 | 3 |
5 | 4 |
6 | 5 |
Örneklerde kullanılan veriler:
RangeTab:
LOAD * INLINE [
MyField
1
2
3
4
5
6
] ;
Örnek: (tablo biçiminde)
Örnek kodu belgenize ekleyin ve çalıştırın. Ardından, sonucu görmek için belgenizdeki bir sayfaya en azından sonuçlar sütununda listelenen alanları ekleyin.
RangeTab:
LOAD recno() as RangeID, RangeFractile(0.5,Field1,Field2,Field3) as MyRangeFrac INLINE [
Field1, Field2, Field3
10,5,6
2,3,7
8,2,8
18,11,9
5,5,9
9,4,2
];
Sonuçta oluşan tablo, tablodaki kayıtların her biri için döndürülen MyRangeFrac değerlerini gösterir.
RangeID | MyRangeFrac |
---|---|
1 | 6 |
2 | 3 |
3 | 8 |
4 | 11 |
5 | 5 |
6 | 4 |