R列的int找到最接近的值

时间:2016-02-24 13:15:37

标签: r

我有一个框架

Number

对于每条记录,我想找到最接近的值,最后以

结尾
J = data.frame(Entry = c(100, 5, 10, 20, 35))

我查看了数据表代码Find closest value in a vector with binary search

但因为对于Entry | nearest 100 | 35 5 | 10 20 | 10 35 | 20 我试图找到最接近的值,它只返回我输入的向量。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:2)

J <- data.frame(Entry = c(100, 5, 10, 20, 35), 
               X = sapply(J$Entry, function(x){
  temp <- J$Entry[!J$Entry == x]
  temp[which.min(abs(temp - x))]
}))

> J
  Entry  X
1   100 35
2     5 10
3    10  5
4    20 10
5    35 20

喜欢这个吗?