1

所以基本上我有一个大数据框到两列,一列时间列和一列大小列。然后我有另一个只有一个时间列的数据框。我想将数据帧中的时间插入到另一个数据帧中,然后我想返回与刚刚插入的时间相对应的大小。

例子:

表格1:

Time
2
4

表 2:

Time   Size
1      40
3      50
5      30

我基本上想在表二中的“1”和“3”之间插入表1中的“2”,并返回大小“40”和“50”

如何使用 approx 函数执行此操作?

4

1 回答 1

3

尝试这个:

> Table1 <- data.frame(Time = c(2, 4))
> Table2 <- data.frame(Time = c(1, 3, 5), size = c(40, 50, 30))
> approx(Table2$Time, Table2$size, xout = Table1$Time, method = "constant")
$x
[1] 2 4

$y
[1] 40 50

添加。这也可以使用 zoo 包来完成,如下所示:

> library(zoo)
> z2 <- read.zoo(Table2, FUN = identity)
> na.approx(z2, xout = Table1$Time, method = "constant")
 2  4 
40 50 

将来请在 R 中写出您的输入数据,以便可以像我们上面所做的那样简单地将其复制并粘贴到正在运行的 R 会话中。

于 2013-06-19T14:25:51.337 回答