繁体   English   中英

在 r 中以单独的时间序列运行循环

[英]Running a loop in separate time series in r

我有多个时间序列和一个从 1937 年到 1943 年运行的时间序列数据,我想在每个时间序列中运行一个循环,我希望在正确准备数据方面得到帮助。 任何帮助表示赞赏!

数据(我有大约 30 个多个时间序列数据,在这里您可以获得前 3 个时间序列数据):

    Plot    Species Year    Count   Ppt Temp
e1q13   BG  1937    81  33.90833333 14.13181818
e1q13   BG  1938    45  48.18333333 15.14727273
e1q13   BG  1939    96  39.95833333 14.92
e1q13   BG  1940    44  48.36666667 14.27363636
e1q13   BG  1941    24  57.975  14.02
e1q13   BG  1942    8   59.55   13.65727273
e1q13   BG  1943    28  38.3    14.28363636
e1q13   BD  1937    135 33.90833333 14.13181818
e1q13   BD  1938    91  48.18333333 15.14727273
e1q13   BD  1939    171 39.95833333 14.92
e1q13   BD  1940    88  48.36666667 14.27363636
e1q13   BD  1941    59  57.975  14.02
e1q13   BD  1942    1   59.55   13.65727273
e1q13   BD  1943    1   38.3    14.28363636
e1q1a1  BG  1937    34  33.90833333 14.13181818
e1q1a1  BG  1938    16  48.18333333 15.14727273
e1q1a1  BG  1939    19  39.95833333 14.92
e1q1a1  BG  1940    35  48.36666667 14.27363636
e1q1a1  BG  1941    32  57.975  14.02
e1q1a1  BG  1942    7   59.55   13.65727273
e1q1a1  BG  1943    2   38.3    14.28363636

我的代码是:

 data$groups <- paste(data$Plot, data$Species, sep = "_")
data_by_plot <- split (data$Count, data$groups)
ly <- lapply(data_by_plot, function(df))

split将 dataframe 拆分为数据帧列表。

data_by_plot <- split(data$Count, data$groups)

使用lapply我们可以将相同的 function 应用于每个 dataframe。

ly <- lapply(data_by_plot, function(df){
  #Add code to be done on each dataframe in the list
})

要将数据再次组合成一个 dataframe 我们可以使用

result <- do.call(rbind, ly)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM