小编Geo*_*rge的帖子

如何计算两个向量一起增加或减少的时间百分比

我想编写一个函数来比较R中两个向量的增量.函数返回两个向量一起增加或减少的次数的百分比.

我写了以下函数,我用向量测试了它:

x=c(1,3,5,6,7)
y=c(1,5,6,8,7)
Run Code Online (Sandbox Code Playgroud)

结果应该是0.75,但是当我打电话时correl(x,y)出现错误

Error in if ...missing value where TRUE/FALSE needed
Run Code Online (Sandbox Code Playgroud)

有帮助吗?

correl<-function(x,y){ 
  count = c()
  for (i in 1:length(x))
    if((((y[i+1]-y[i]) > 0) && ((x[i+1]-x[i]) > 0)) || (((y[i+1]-y[i]) < 0) && ((x[i+1]-x[i]) < 0))) 
      count <- union(count, c(i))
  print(length(count) / length(x)-1)
}
Run Code Online (Sandbox Code Playgroud)

r

1
推荐指数
1
解决办法
169
查看次数

标签 统计

r ×1