Przykładowe korzystanie z funkcji linest
Funkcje linest są stosowane w celu znajdowania wartości powiązanych z analizą regresji liniowej. W tej sekcji opisano sposoby tworzenia wykresów na podstawie danych z próby w celu znalezienia wartości funkcji linest dostępnych w QlikView. Funkcje linest mogą być stosowane w skryptach ładowania i wyrażeniach wykresu.
Więcej informacji o składni i argumentach poszczególnych funkcji wykresów i skryptów linest można znaleźć w stosownych opisach.
Ładowanie danych z próby
Wykonaj następujące czynności:
- Utwórz nowy dokument.
-
Wybierz na pasku narzędzi opcję Edytuj skrypt i wprowadź następujący kod do skryptu:
T1:
LOAD *, 1 as Grp;
LOAD * inline [
X |Y
1| 0
2|1
3|3
4| 8
5| 14
6| 20
7| 0
8| 50
9| 25
10| 60
11| 38
12| 19
13| 26
14| 143
15| 98
16| 27
17| 59
18| 78
19| 158
20| 279 ] (delimiter is '|');
R1:
LOAD
Grp,
linest_B(Y,X) as Linest_B,
linest_DF(Y,X) as Linest_DF,
linest_F(Y,X) as Linest_F,
linest_M(Y,X) as Linest_M,
linest_R2(Y,X) as Linest_R2,
linest_SEB(Y,X,1,1) as Linest_SEB,
linest_SEM(Y,X) as Linest_SEM,
linest_SEY(Y,X) as Linest_SEY,
linest_SSREG(Y,X) as Linest_SSREG,
linest_SSRESID(Y,X) as Linest_SSRESID
resident T1 group by Grp;
- Zapisz skrypt i kliknij przycisk Przeładuj, aby załadować dane.
Wyświetlanie wyników obliczeń skryptowych
Wykonaj następujące czynności:
-
Dodaj w arkuszu pole tabeli i wybierz do wyświetlenia poniższe pola:
- Linest_B
- Linest_DF
- Linest_F
- Linest_M
- Linest_R2
- Linest_SEB
- Linest_SEM
- Linest_SEY
- Linest_SSREG
- Linest_SSRESID
Tabela zawierająca wyniki obliczeń funkcji linest dokonanych w ramach skryptu ładowania powinna wyglądać następująco:
Linest_B | Linest_DF | Linest_F | Linest_M | Linest_R2 |
---|---|---|---|---|
-35.047 | 18 | 20.788 | 8.605 | 0.536 |
Linest_SEB | Linest_SEM | Linest_SEY | Linest_SSREG | Linest_SSRESID |
---|---|---|---|---|
22.607 | 1.887 | 48.666 | 49235.014 | 42631.186 |
Tworzenie wykresów dla funkcji linest
Wykonaj następujące czynności:
- Utwórz nowy wykres liniowy, wybierając kolejno opcje Obiekt > Nowy obiekt arkusza > Wykres...:
- W oknie Wymiary dodaj X jako wymiar.
- W oknie Wyrażenie dodaj Sum(Y) jako miarę.
- W oknie Prezentacja usuń zaznaczenie opcji Pomijaj wartości zerowe.
Utworzony zostanie wykres liniowy, który przedstawia osie X i Y, na podstawie których obliczane będą wartości funkcji linest.
-
Dla wyrażenia Sum(Y) włącz funkcję Linie trendu i zaznacz opcję Pokaż równanie.
Wyświetlona zostanie wówczas wbudowanych w QlikView najlepszych dopasowań w kontekście opisywanej funkcji regresji liniowej.
-
Dokonaj stosownych obliczeń dla funkcji regresji liniowej za pomocą funkcji linest_b i linest_m. W tym celu dodaj drugie wyrażenie zdefiniowane w następujący sposób:
$(=LINEST_M(Y,X))*ONLY(X)+$(=LINEST_B(Y,X))
-
Dodaj w arkuszu tabelę prostą i następujące dane jako wymiar wyliczany:
ValueList('Linest_b', 'Linest_df','Linest_f', 'Linest_m','Linest_r2','Linest_SEB','Linest_SEM','Linest_SEY','Linest_SSREG','Linest_SSRESID')
Korzysta się tutaj z funkcji wymiarów syntetycznych w celu utworzenia etykiet dla wymiarów z nazwami funkcjilinest. Z uwagi na oszczędność miejsca można zmienić nazwę tej etykiety na Linest functions.
-
Dodaj w tabeli następujące wyrażenie jako miarę:
Pick(Match(ValueList('Linest_b', 'Linest_df','Linest_f', 'Linest_m','Linest_r2','Linest_SEB','Linest_SEM','Linest_SEY','Linest_SSREG','Linest_SSRESID'),'Linest_b', 'Linest_df','Linest_f', 'Linest_m','Linest_r2','Linest_SEB','Linest_SEM','Linest_SEY','Linest_SSREG','Linest_SSRESID'),Linest_b(Y,X),Linest_df(Y,X),Linest_f(Y,X),Linest_m(Y,X),Linest_r2(Y,X),Linest_SEB(Y,X,1,1),Linest_SEM(Y,X),Linest_SEY(Y,X),Linest_SSREG(Y,X),Linest_SSRESID(Y,X) )
Wyrażenie to wyświetli wartość wyniku każdej funkcji linest w kontekście odpowiedniej nazwy w wymiarze syntetycznym. Wynik funkcji Linest_b(Y,X) zostanie wyświetlony obok pola linest_b itd.
Linest functions | Linest function results |
---|---|
Linest_b | -35.047 |
Linest_df | 18 |
Linest_f | 20.788 |
Linest_m | 8.605 |
Linest_r2 | 0.536 |
Linest_SEB | 22.607 |
Linest_SEM | 1.887 |
Linest_SEY | 48.666 |
Linest_SSREG | 49235.014 |
Linest_SSRESID | 42631.186 |