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:

  1. Utwórz nowy dokument.
  2. 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;

  3. Zapisz skrypt i kliknij przycisk Przeładuj, aby załadować dane.

Wyświetlanie wyników obliczeń skryptowych

Wykonaj następujące czynności:

  1. 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 Linest_SEB
-35.047 18 20.788 8.605 0.536 22.607

Linest_SEM Linest_SEY Linest_SSREG Linest_SSRESID
1.887 48.666 49235.014 42631.186

Tworzenie wykresów dla funkcji linest

Wykonaj następujące czynności:

  1. Dodaj wykres liniowy z X jako wymiarem i wyrażeniem Sum(Y) jako miarą.

    Utworzony zostanie wykres liniowy, który przedstawia osie X i Y, na podstawie których obliczane będą wartości funkcji linest.

  2. 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.

  3. 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))

  4. 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.

  5. 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.

Wynik

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