gpt4 book ai didi

替换多列的 diff()

转载 作者:行者123 更新时间:2023-12-04 10:01:26 28 4
gpt4 key购买 nike

diff() 计算指定滞后向量中值之间的差异。
是否有适用于两个向量的等效函数?例如,我有:

v1 = c(1, 2, 3, 4, 5, 3)
v2 = c(5, 4, 3, 2, 1, 0)

我需要计算滞后 1 处 v1 和 v2 的每个值之间的差异。那将是:
(2 - 5), (3 - 4), (4 - 3)... 

这可以通过在 2 个向量上使用 head()/tails() 组合来实现,但我想知道是否已经有一个函数可以做到这一点。

最佳答案

我知道没有基本函数可以执行此操作,但正如 gsk3 指出的 taRifx 包具有此功能。我建议不要调用一个包来做这么简单的事情:你可以这样做:

v1[-1] - v2[-length(v2)]

或者在 .Rprofile 中编写自己的存储函数
shift.diff <- function(x, y) x[-1] - y[-length(y)]
shift.diff(v1, v2)

关于替换多列的 diff(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9946116/

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