如何创建一个使用不同数据集(每个由多个数据文件组成)作为输入的嵌套循环,然后保存结果变量特定的?嵌套循环通过R中的不同数据集
我已经写了一个for循环,它为一个国家设定不同的气候数据文件的子集,然后总结温度值。
的数据是这样的,并在这两个国家的每一个地区,给出了每一天(一个文件=一个区域)
Date |Prec |Temperature
----------|-----|-----------
13-01-1992| 1 | 1
14-01-1992| 0 | 1.5
15-01-1993| 0.8 | -0.4
16-01-1993| 0 | -2.2
17-01-1994| 0 | -2.35
13-01-1994| 0.3 | -2.95
14-01-1995| 1 | -8.95
15-01-1995| 2 | -7.25
16-01-1996| 1.5 | -6
17-01-1996| 0 | -8.3
13-02-1997| 1 | -0.3
14-02-1997| 0.1 | -0.15
15-02-1998| 0 | -2.5
16-02-1998| 0.2 | -3.4
17-02-1999| 0.9 | -0.4
16-03-1999| 2.6 | 8.4
17-03-2000| 1.7 | 11
18-03-2000| 4.7 | 4.65
19-03-2001| 1 | 2.95
20-03-2001| 0.6 | 4.7
13-08-2002| 2 | 22.35
14-08-2002| 1 | 20
15-08-2003| 1.7 | 21.4
16-08-2003| 0.5 | 21.55
17-08-2004| 0.4 | 21.5
17-02-2004| 0.3 | -0.6
18-02-2005| 0.8 | -3.4
19-02-2005| 1.2 | -3
20-02-2006| 0.8 | 2
21-02-2006| 6 | 1.2
现在,我想这在数据集的两个不同国家的运行。 不同数量的数据文件属于每个国家/地区。 我尝试这样做:
Temperature<-matrix(1995:2006,12,1)
Country_A<-c("1.csv","2.csv","3.csv")
Country_B<-c("4.csv","5.csv")
country<-c(Country_A, Country_B)
country_names<-c("Country_A "," Country_B ")
for(j in 1:2)
{for(i in country[j]) {
name <- country_names[j]
Data<-read.csv(i, header=TRUE, sep = ",")
Data$Dates<-as.Date(Data$Date, "%d-%m-%Y")
Data95<-subset(Data, Dates>="1995-01-01")
Data$Years<- as.numeric(format(Data$Dates, "%Y"))
Temperature<-cbind(Temperature, aggregate(Data95$Column1, by= list(Data95$Years),FUN=sum))}}
后反而彼此通过一个国家循环,这样才1和2都解决了文件。我认为问题是关于 country<-c(Country_A, Country_B)
我假设一个数组可能是解决方案分别解决国家和也可能保存温度结果国家特定的。 不幸的是我对R相当陌生,因此我不知道如何设置它。 任何帮助我都会很高兴!
共享samle数据集的CSV文件,一个是有。 For循环应该很慢 –