我在R A模型:如何實現C R模型++代碼
> s1 <- toys[1:10000,]
> model <- glm(V11~V2+V3+V5+V7+V8+V9+V10,gaussian,s1)
> model
Call: glm(formula = V11 ~ V2 + V3 + V5 + V7 + V8 + V9 + V10, family = gaussian,
data = s1)
Coefficients:
(Intercept) V2 V3 V5 V7 V8 V9 V10
-0.900106 0.006385 -0.005080 1.006324 0.229282 0.-0.049307 -0.186450
Degrees of Freedom: 9999 Total (i.e. Null); 9992 Residual
Null Deviance: 11050000
Residual Deviance: 121200 AIC: 53340
現在,我該如何設定此R型爲C函數? (帶有鏈接的RTFM就足夠了)
也許我只需要將來自R模型的所有係數乘以它們各自的輸入並添加所有項以得到最終結果?
float model(float v2, float v3, ... float v10)
{
return -0.900106 * v2 + 0.006385 * v3 + .. + (-0.186450) * v10;
}
我需要獨立的代碼不依賴於任何外部來源
正是你想要做的:一個計算給定輸入數據的迴歸係數的程序,還是一個輸出給定一組參數的預測的程序? – chl 2011-05-30 08:16:34
@chl給出了由R估計的迴歸係數,我想用C實現這個迴歸模型,以便從C代碼返回預測結果。 – 2011-05-30 08:20:16
您錯過了您提供的代碼片段中的截取術語。對於存儲在x1,x2,...中的觀測值,這應該爲y = -0.900 + 0.006 * x1 - 0.005 * x2 ...我會相應地更新我的答案。 – chl 2011-05-30 08:29:02