RangeFractile - Skript- und Diagrammfunktion
RangeFractile() liefert den Wert, der dem n-ten fractile (Quantil) der Reihe an Zahlen entspricht.
Syntax:
RangeFractile(fractile, first_expr[, Expression])
Rückgabe Datentyp: numerisch
Argumente:
Das Argument dieser Funktion kann durch „Inter-Record-Funktionen“ berechnet werden, die selbst auch wieder eine Anzahl von Werten liefern.
- fractile: Eine Zahl zwischen 0 und 1, die dem zu berechnenden Fraktil (Quantil als Bruchteil ausgedrückt) entspricht.
- first_expr: Die Formel oder das Feld mit den Daten, die gemessen werden sollen.
- Expression: Optionale Formeln oder Felder, in denen die zu messenden Daten enthalten sind.
Beispiele:
Beispiel | Ergebnis |
---|---|
RangeFractile (0.24,1,2,4,6) | Liefert 1,72 |
RangeFractile(0.5,1,2,3,4,6) |
Liefert 3 |
RangeFractile (0.5,1,2,5,6) |
Liefert 3,5 |
Beispiel: (mit Formel)
RangeFractile (0.5, Above(Sum(MyField),0,3))
In diesem Beispiel enthält die Inter-Record-Funktion Above() die optionalen offset und count-Argumente. Dies bringt eine Reihe an Ergebnissen hervor, die als Input für die Mengenfunktionen verwendet werden können. In diesem Fall liefert Above(Sum(MyField),0,3) die Werte von MyField für die aktuelle Zeile und die zwei Zeilen davor. Diese Werte stellen den Input für die Funktion RangeFractile() bereit. Also entspricht dies für die unterste Zeile in der unten stehenden Tabelle dem Wert von RangeFractile(0.5, 3,4,6), d. h. der Berechnung des 0,5-Fraktils für die Serien 3, 4 und 6. Für die ersten zwei Zeilen in der unten stehenden Tabelle wird die Anzahl der Werte in der Reihe entsprechend reduziert, wenn oberhalb der aktuellen Zeile keine Zeilen vorhanden sind. Ähnliche Ergebnisse werden für andere Inter-Record-Funktionen ausgegeben.
MyField | RangeFractile(0.5, Above(Sum(MyField),0,3)) |
---|---|
1 | 1 |
2 | 1.5 |
3 | 2 |
4 | 3 |
5 | 4 |
6 | 5 |
In Beispielen verwendete Daten:
RangeTab:
LOAD * INLINE [
MyField
1
2
3
4
5
6
] ;
Beispiel: (in Tabellenform)
Fügen Sie Ihrem Dokument das Beispielskript hinzu und führen Sie sie aus. Fügen Sie einem Arbeitsblatt in Ihrem Dokument dann mindestens diejenigen Felder hinzu, die in der Ergebnisspalte aufgeführt sind, um das Ergebnis anzuzeigen.
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
];
Die resultierende Tabelle zeigt die ausgegebenen Werte von MyRangeFrac für jeden der Datensätze in der Tabelle an.
RangeID | MyRangeFrac |
---|---|
1 | 6 |
2 | 3 |
3 | 8 |
4 | 11 |
5 | 5 |
6 | 4 |