精華區beta NCTU-STAT95G 關於我們 聯絡資訊
分享回歸這一份作業 其中 #define N_OBSERVATIONS 9 (樣本數) int n_class = 指的是X Matrix 有幾個column是分類變數 int n_cont = 指的是X Matrix 有幾個column是連續變數 重點是這X Matrix double x[18] = 這個X Matrix 不是老師講義裡的那個X矩陣 這個矩陣主要是顯示資料中有無分類 有幾項連續變數(內建的叫法) 所以 比如regression model 的X Matrix只需輸入one column的連續變數X_ij 因為他不必分組(故沒有分類變數) 1.Y_i = u + bX_i + error (無分類變數,有一個連續變數X_i) *變數:一個連續變數 注意b為參數不為變數* 比如 one way anova model 的X Matrix 則只需輸入分類變數 他的model和X_ij無關 所以他沒有連續變數 因為題目是分"一"類"三"組 所以這裡的X Matrix為一個column 你可以是-1,-1,-1,0,0,0,1,1,1 or 1,1,1,2,2,2,3,3,3 都隨意 or 100,100,100,200,200,200,0,0,0 只要表達出有三組且每組三個即可 2.Y_ik = u + a_i +error (有分類變數a_i,無連續變數) *變數:一個分類變數* 3.Y_ik = u + a_i +bX_ik + error *變數:一個分類變數,一個連續變數* int n_effects = 有幾個加號 (最後"+"error 這一個不算) int n_var_effects[1] = "+"到"+"間有幾個變數 ex.最後anocova model為{1,1} int indices_effects[1] = 各變數在 X Matrix 所佔的第幾column 最後別忘了 在程式最後一行加上 for(i=0;i<3;i++) printf("coef_%d=%5f\n",i,coef[i]); 算參數估計 ^看參數有幾個 (PS 這估出來的數會和原始資料估出來的數有點差異 (就是你用老師個矩陣公式去算) 所以我今天有問一下老師 學長告訴我... 是因為這個程式自動會刪去某一組資料,因為醬可以避免一些計算錯誤產生 又因老師給的資料太少,使得參數估的會有不少差異) 哈 我大概分享到這 ^_^ 也差不多要睡了 今天很高興認識大家摟~ 晚安~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.186.117 ※ 編輯: mangogogo 來自: 140.113.186.117 (08/10 00:29)