[英]Can someone explain how mult works in data.table when it performs update in joins (using .EACHI and mult)
[英]Can someone explain how endpoints function works?
我不明白为什么我会从端点 function 收到 output,而我期待别的东西。 我写了一个伪代码,有人可以解释一下机制吗?
y1<-rep(1,times=750)
y1<-xts(y1, order.by = Sys.Date()-1:750)
endpoints(y1,'days',250)
使用此代码 R 返回0 123 347 484 713 750
。 它不应该返回250 500 750
吗? 或者它将如何返回这些索引? 谢谢
看起来endpoints
总是在年底生成一个点,并且k
从年初开始计算:
y1[endpoints(y1,'days',k=250)]
[,1]
2019-09-07 1
2019-12-31 1
2020-09-06 1
2020-12-31 1
2021-02-06 1
以上结果是一年中的第 250 天或年末。
在文档中没有明确提到这一点,但源代码显示即使计算days
数, year
也起着关键作用:
days = {
ixyday <- posixltindex$year * 1000L + 1900000L + posixltindex$yday
.Call("endpoints", ixyday, 1L, k, addlast, PACKAGE = "xts")
}
要获取您正在寻找的索引,您可以使用%%
(模运算符):
which(1:750%%250==0)
[1] 250 500 750
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.