# linest 函數使用方式範例

linest 函數可用來得出與線性迴歸分析相關的值。本節說明如何使用樣本資料建置圖表，進而得出 QlikView 中可用 linest 函數的值。linest 函數可用於載入指令碼和圖表運算式。

請參閱個別 linest 圖表函數與指令碼函數主題，取得語法及引數的說明。

## 載入樣本資料

請執行下列動作：

1. 建立新的文件。

2. 選取工具列中的編輯指令碼，然後將以下內容輸入指令碼：

   `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. 儲存指令碼，並按一下重新載入以載入資料。

## 顯示指令碼計算的結果

請執行下列動作：

1. 在工作表上新增一個表格方塊，並選取以下要顯示的欄位：

   * Linest\_B
   * Linest\_DF
   * Linest\_F
   * Linest\_M
   * Linest\_R2
   * Linest\_SEB
   * Linest\_SEM
   * Linest\_SEY
   * Linest\_SSREG
   * Linest\_SSRESID

包含用載入指令碼得出的 linest 計算結果之表格外觀應如下所示：

範例結果 (前 5 個項目)

| Linest\_B | Linest\_DF | Linest\_F | Linest\_M | Linest\_R2 |
| --- | --- | --- | --- | --- |
| -35.047 | 18 | 20.788 | 8.605 | 0.536 |

範例結果 (最後 5 個項目)

| Linest\_SEB | Linest\_SEM | Linest\_SEY | Linest\_SSREG | Linest\_SSRESID |
| --- | --- | --- | --- | --- |
| 22.607 | 1.887 | 48.666 | 49235.014 | 42631.186 |

## 建立 linest 圖表函數圖表

請執行下列動作：

1. 前往物件 &gt; 新的工作表物件 &gt; 圖表...，以建立新的折線圖：

   * 在維度 視窗中，新增 X 作為維度。
   * 在運算式視窗中，新增 Sum(Y) 作為量值。
   * 在簡報視窗中，取消選取隱藏零值。

   已建立一個折線圖 (代表根據 Y 繪製的 X 圖形)，而 linest 函數會從該折線圖進行計算。

2. 對於運算式 Sum(Y)，啟用線性 [趨勢線] 功能並勾選 [顯示方程式]。

   如此一來會顯示最適合所述線性迴歸函數的 QlikView 內建線。

3. 使用 linest\_b 和 linest\_m 函數計算線性迴歸函數，方法為新增定義為以下內容的第二個運算式：

   $(=LINEST\_M(Y,X))\*ONLY(X)+$(=LINEST\_B(Y,X))

4. 在工作表上新增一個連續表，並新增以下項目作為計算維度：

   ` ValueList('Linest_b', 'Linest_df','Linest_f', 'Linest_m','Linest_r2','Linest_SEB','Linest_SEM','Linest_SEY','Linest_SSREG','Linest_SSRESID')
                            `

   使用合成維度函數來建立含有 linest 函數名稱的維度標籤。您可將標籤變更為 Linest functions 以節省空間。

5. 將以下運算式作為量值新增至表格：

   ` 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) )
                            `

   這會顯示針對合成維度中對應名稱的各 linest 函數結果值。`Linest_b(Y,X)` 的結果會顯示在 linest\_b 旁邊，以此類推。

表格形式的範例輸出

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