我有两列的数据帧错误多项式回归使用预测中的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