r - 如何遍历循环
问题描述
我想自动执行此操作,而不是输入 1500 次。
n1 <- spei[sp_latong[[1]]$lon_indx,sp_latong[[1]]$lat_indx,ind_time]
.
.
.
n1500 <- spei[
sp_latong[[1500]]$lon_indx,
sp_latong[[1500]]$lat_indx,
ind_time ]
### create final data
dat1 <- cbind(n1,n2,...,n1500)
我尝试使用循环,我有以下代码:
t <- 0
for(i in 1: length(sp_latong){
t[[i]] < -
spei[sp_latong[[i]]$lon_indx,sp_latong[[i]]$lat_indx,ind_time]
}
我收到一条错误消息
spei[sp_latong[[i]]$lon_indx, sp_latong[[i]]$lat_indx] 错误:维数不正确。
我不得不将 t[[i]] 更改为 t[i] 和 t,我得到了相同的错误消息。任何建议将被认真考虑。
注意: spei 是一个大数组 sp_latong 是列表
解决方案
我根据 Dave2e 的想法用下面的代码修复了它
t<- list()
for(i in 1:length(sp_latong)){
t[[i]] <- spei[sp_latong[[i]]$lon_indx,sp_latong[[i]]$lat_indx,ind_time]
}
@ Dave2e 非常感谢。
推荐阅读
- java - 错误:类数据库中的方法 cleanCart 不能应用于给定类型
- flutter - Flutter中ListTile标题属性的默认字体大小?
- android - 如何在 Firebase 回收器适配器中实现 recyclerview ItemClickListener()?
- javascript - 如何在 Angular 中访问 Json 中的嵌套键值对
- c++ - 使用基地址和偏移量获取变量的地址
- python - (Python) Monkeypatch __new__ 用于 python 中的 int、float、str、list、dict、set 和 module 类型的对象
- android - adb 服务器版本 (41) 与此客户端 (39) 不匹配
- python-3.x - 使用混合 cnn+svm 模型的图像识别
- html - 如何让两个引导卡并排使用媒体查询来响应?
- php - 使用 eloquent 和 SnmpDriver 迁移在 Laravel 中更新具有不同值的多行