小编Jam*_*s_S的帖子

将五年数据转换为年度数据并计算R中的新记录

我希望有人可以帮我解决这个问题.我正在处理每五年有一次记录的时间序列数据.数据框df是一个示例,其中包含时间步长df$Time并记录值 df$A.

df
Time    A
5   4.8
10  19.6
15  27.5
20  39.7
Run Code Online (Sandbox Code Playgroud)

我需要做的是转换df为年度时间序列,并根据计算使用新值填充所有新记录.我使用以下方法成功转换df为年度数据df2:

df2  <- data.frame("Time" = c(5:20), "A" = c(5:20))
df2$A[] <- sapply(df2$A, function(x) df$A[match(x, df$Time)])
df2[is.na(df2)] <- 0
df2
Time    A
5   4.8
6   0
7   0
8   0
9   0
10  19.6
11  0
12  0
13  0
14  0
15  27.5
16  0
17  0
18  0
19  0
20  39.7
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚的是如何计算新值df2$A.计算取决于其他行/记录值的相对位置 …

r time-series dataframe

5
推荐指数
1
解决办法
66
查看次数

标签 统计

dataframe ×1

r ×1

time-series ×1