RangeAvg - funzione dello script e del grafico
RangeAvg() restituisce la media di una scala. L'input per la funzione può essere una scala di valori o un'espressione.
Sintassi:
RangeAvg(first_expr[, Expression])
Tipo di dati restituiti: numerico
Argomenti:
L'argomento di questa funzione può contenere funzioni intra-record, che a loro volta restituiscono un elenco di valori.
- first_expr: L'espressione o il campo contenente i dati di cui calcolare la media.
- Expression: Le espressioni o i campi opzionali contenenti i dati aggiuntivi di cui calcolare la media. È possibile utilizzare più espressioni aggiuntive.
Limiti:
Se non viene trovato nessun valore numerico, viene restituito NULL.
Esempi:
Esempio | Risultato |
---|---|
RangeAvg (1,2,4) |
Restituisce 2,33333333 |
RangeAvg (1,'xyz') | Restituisce 1 |
RangeAvg (null( ), 'abc') | Restituisce NULL |
Esempio: (utilizzo dell'espressione)
RangeAvg (Above(MyField),0,3))
Restituisce la media mobile del risultato della scala di tre valori di MyField calcolati in base alla riga attuale e alle due righe che la precedono. Specificando 3 per il terzo argomento, la funzione Above() restituisce tre valori, se il numero di righe che precedono la riga attuale è sufficiente, che vengono considerati come input per la funzione RangeAvg().
MyField | RangeAvg (Above(MyField,0,3)) | Spiegazione |
---|---|---|
10 | 10 | Dato che questa è la prima riga, la scala presenta un unico valore. |
2 | 6 | Questa riga è preceduta da un'unica riga, quindi la scala è: 10,2. |
8 | 6.6666666667 | L'equivalente di RangeAvg(10,2,8) |
18 | 9.333333333 | - |
5 | 10. 333333333 | - |
9 | 10.6666666667 | - |
Dati utilizzati negli esempi:
RangeTab:
LOAD * INLINE [
MyField
10
2
8
18
5
9
] ;
Esempio: (in formato tabella)
Aggiungere lo script di esempio al documento ed eseguirlo. Aggiungere quindi a un foglio del documento almeno i campi elencati nella colonna dei risultati per visualizzare il risultato.
RangeTab3:
LOAD recno() as RangeID, RangeAvg(Field1,Field2,Field3) as MyRangeAvg INLINE [
Field1, Field2, Field3
10,5,6
2,3,7
8,2,8
18,11,9
5,5,9
9,4,2
];
La tabella risultante mostra i valori restituiti da MyRangeAvg per ciascun record della tabella.
RangeID | MyRangeAvg |
---|---|
1 | 7 |
2 | 4 |
3 | 6 |
4 | 12.666 |
5 | 6.333 |
6 | 5 |