Hen*_*nri 15 r date which closest
我想确定给定日期的向量中最接近的日期.假设我有以下日期向量(有5个随机日期):
coldate= as.Date(c("2013-08-03", "2013-09-04", "2013-09-08", "2013-09-12", "2013-11-01"));
Run Code Online (Sandbox Code Playgroud)
现在,我想x = as.Date("2013-10-01")在这个向量中找到最接近的日期.
这是我的代码:
> which((coldate-x) == min(coldate-x))
[1] 1
Run Code Online (Sandbox Code Playgroud)
结果应该是4,因为日期"2013-09-12"是最接近的.但是,我有1 ...我的代码有什么问题?
Aru*_*run 19
你错过了abs照顾负面价值观:
which(abs(coldate-x) == min(abs(coldate - x)))
[1] 4
Run Code Online (Sandbox Code Playgroud)
包中的which.closest()函数birk是一个简单的选项。
coldate= as.Date(c("2013-08-03", "2013-09-04", "2013-09-08", "2013-09-12", "2013-11-01"))
x = as.Date("2013-10-01")
which.closest(coldate, x)
[1] 4
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11335 次 |
| 最近记录: |