R:更改前的值

R:更改前的值,r,diff,R,Diff,以下代码在减少、增加或无变化后将test拆分为数字 test <- c(1,2,3,4,5,5,4,1,2,3) ifelse(diff(test)>0, "up", ifelse(diff(test)<0, "down", "no change")) [1] "up" "up" "up" "up" "no change" "down" "down" "up" "up" 测试0,“up”,IFOR(DIFF(test) DIFF(x)返回一个长度小于x的数组,以便 f

以下代码在减少、增加或无变化后将
test
拆分为数字

test <- c(1,2,3,4,5,5,4,1,2,3)
ifelse(diff(test)>0, "up", ifelse(diff(test)<0, "down", "no change"))

[1] "up" "up" "up" "up" "no change" "down" "down" "up" "up"  
<代码>测试0,“up”,IFOR(DIFF(test)

<代码> DIFF(x)返回一个长度小于x的数组,以便<代码> ffi(x)[i]=x[i+3] -x[i] < /代码>。无论你想考虑这个变化,在“i + 1之前”或“i之后”的变化没有区别,它仍然是相同的值。


如果您想返回与输入长度相同的数组,请在您的情况下尝试
c(“无更改”,结果)
c(结果,“无更改”)
,这将使结果与输入长度相同,并表示“无更改”发生在第一个条目之前,或“无更改”发生在最后一个条目之后。我无法确定其中哪一个是您想要的,但它应该是这两个条目中的一个。

为清楚起见,您期望结果的完整向量是什么?根据编辑,这不只是一个视角问题吗?输出是否相同?同样的@JasonAizkalns问题仍然存在。您在寻找什么准确地说?即最终结果vector@AndrewTaylorThe当我想将后跟up的数字与另一列链接时,会出现问题。相应的数字可能会不同。它也无法捕获初始值及其后跟的更改。虽然输出向量在视觉上看起来相同,但表示错误的数字。谢谢为此!这是漫长的一天的最后一天,我根本没有想到这个简单的解决办法。