r - r中训练和测试集的划分
问题描述
在 1937 - 1966 的多个时间序列中,我想在每个时间序列中运行一个循环,并在训练集上建立一个简单的模型(前 20 个集和其余 10 个集用作测试集,我使用测试集来预测一个简单的平均模型。我想按照我在第一行从最后一个训练集构建模型并应用于第一行测试集、第二行测试集、第四行测试集的方式来划分训练和测试集和第五行测试集,一种滚动基础,同样的事情继续使用最后一个训练集的第二行......。
Plot Species Year Count Ppt Temp
A BG 1937 81 33.90833333 14.13181818
A BG 1938 45 48.18333333 15.14727273
A BG 1939 96 39.95833333 14.92
A BG 1940 44 48.36666667 14.27363636
A BG 1941 24 57.975 14.02
A BG 1942 8 59.55 13.65727273
A BG 1943 28 38.3 14.28363636
…………………………………….
A BG 1966 30 33.5 12.366666
A BD 1937 135 33.90833333 14.13181818
A BD 1938 91 48.18333333 15.14727273
A BD 1939 171 39.95833333 14.92
A BD 1940 88 48.36666667 14.27363636
A BD 1941 59 57.975 14.02
A BD 1942 1 59.55 13.65727273
A BD 1943 1 38.3 14.28363636
……………………………………………………..
A BD 1966 36 28 15.23658
B BG 1937 34 33.90833333 14.13181818
B BG 1938 16 48.18333333 15.14727273
B BG 1939 19 39.95833333 14.92
B BG 1940 35 48.36666667 14.27363636
B BG 1941 32 57.975 14.02
B BG 1942 7 59.55 13.65727273
B BG 1943 2 38.3 14.28363636
------------------------------------
B BG 1966 4 25 12.259
我的代码是:
data$groups <- paste(data$Plot, data$Species, sep = "_")
data_by_plot <- split (data$Count, data$groups)
ly <- lapply(data_by_plot, function(df) {
Training<-df[1:20,]
Testing<-df[21:30,]
Mean_model<-lm(count~1, data = Training)
Prediction<-Testing$Count[i]- Mean_model$coefficients
return(Prediction)
})
解决方案
推荐阅读
- c# - C# EF CF - 违反参照完整性约束:多个外键到同一个表
- python - 如何在 docker 镜像中编辑库包
- c# - 获取单个传递参数的名称和类型?
- java - Toast.makeText 在 Andriod Studio 上只出现一次
- dialogflow-es - Dialogflow:跟进直接对 webhook 的快速回复
- java - How to fix fatal error when executing setText()
- php - 将“完整性约束违规:1048 列不能为空”变成警报消息
- android - 为多应用程序 android 项目设置 Jenkins
- java - 如果 JSON 具有无效的属性名称,RestTemplate (w/Jackson) 调用是否应该失败
- sql - 查询postgresql表的效率问题