我正在尝试创建按月和年分隔的数据列表(价值40年)。数据目前具有名称结构(年) - (数字月) - (Var).nc。我想将所有数据放入下面创建的相应列表中。不完全确定如何从这里开始。任何指导都表示赞赏。
files_nc <- list.files(pattern = ".nc")
year <- vector("list", length = 40)
month <- vector("list", length = 12)
names(year) <- c(1978:2017)
names(month) <- c("Jan","Feb","Mar","Apr","May","Jun","Jul",
"Aug","Sep","Oct","Nov","Dec")
for (i in 1:40) {
year[[i]] <- month
}
答案 0 :(得分:0)
它并不完全清楚你要求的是什么,但我相信这应该有效。我假设您正在加载文件列表,并且每个文件都与一年和一月相关联。
file_names <- list(names(files_nc))
file_names_split <- lapply(file_names,function(x)strsplit(x,"-"))
for(i in 1:length(file_names_split)) {
y <- which(names(year) == file_names_split[[i]][[1]][1])
m <- as.numeric(file_names_split[[i]][[1]][2])
year[[y]][m] <- files_nc[[i]]
}
一般来说,这种方法应该有效。如果它有效,我会花时间将for循环重写为apply语句。