gpt4 book ai didi

r - 日期向量的分位数函数

转载 作者:行者123 更新时间:2023-12-03 09:45:49 24 4
gpt4 key购买 nike

我注意到基数 R quantile函数不支持日期参数。

我很欣赏为日期定义分位数需要在定义中注意(即,如果您有 6 个日期并要求第 25 个百分位数,则需要定义合适的舍入)。

是否有这样一个分位数函数的有效实现,作为基础或另一个包的一部分。

下面的示例函数基本上实现了我感兴趣的内容(通过一些调整来处理第 0 个百分位数的情况),但我认为可能有更有效的实现。

#Date quantile function.
dquantile <- function(x, probs){

sx <- sort(x)

pos <- round( probs * length(x) )

return( sx[pos] )
}

# Example.
dates <- as.Date("01/01/1900", "%d/%m/%Y") + floor( 36500 * runif(100000) )

dquantile(dates, c(0.001, 0.025, 0.975, 0.999) )

最佳答案

quantile函数确实支持日期,您只需要指定 type争论。您的问题可以通过以下方式解决:

dates <- as.Date("01/01/1900", "%d/%m/%Y") + floor( 36500 * runif(100000) )

quantile(dates, probs = c(0.001, 0.025, 0.975, 0.999), type = 1)

0.1% 2.5% 97.5% 99.9%
"1900-02-04" "1902-06-23" "1997-06-10" "1999-10-30"

关于r - 日期向量的分位数函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49405531/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com