我有兩列的數據幀錯誤多項式迴歸使用預測中的R
var_1<-seq(1:252)
var_2<-runif(1:252)*1000
my_new_df<-data.frame(var_1,var_2)
names(my_new_df)<-c("Time_values","Count")
train_poly_data<-my_new_df[1:150,c("Time_values","Count")] # training data set
valid_poly_data<-my_new_df[151:200,c("Time_values","Count")] # validation data set
test_poly_data<-my_new_df[201:252,c("Time_values","Count")] # test data set
#obtain a polymomial regression model with 20 Degrees
poly_tr<-lm(train_poly_data$Count ~ poly(train_poly_data$Time_values,degree=20,raw = TRUE))
summary(poly_tr)
#getting the following warnings
Warning messages:
1: 'newdata' had 50 rows but variables found have 150 rows
2: In predict.lm(poly_tr, valid_poly_data) :
prediction from a rank-deficient fit may be misleading
這是我需要做的,
我需要分割的訓練數據幀,驗證,測試數據設置 接下來,我想使用訓練數據使用多項式迴歸並使用驗證數據驗證它
但是我一直在收到錯誤,我將如何解決該問題,我也有興趣找到最佳程度的多項式爲我想看看隨機選取的20的多項式是否正確?
任何建議或幫助指出我的錯誤將永遠受歡迎。
如何解決此警告?我知道警告是因爲我們在訓練數據集中有150個值,在驗證數據集中有50個值
哪裏是你predict.lm代碼? –
my_pred <-predict(poly_tr,valid_poly_data) 警告信息: 1: 'newdata' 有50行,但發現變量具有150行 2:在predict.lm(poly_tr,valid_poly_data): 預測從秩虧配合可能會誤導 – Q007
對不起,我忘了粘貼它 – Q007