R编程:将for循环的输出设置为向量?

时间:2015-03-24 22:53:47

标签: r loops for-loop

对于数据框(x,y),我试图找到所有斜率的可能组合(即S[ij]=(y[j]-y[i])/(x[j]-x[i]) for i=!=j)。 我试图找到所有可能的x[j]-x[i]y[j]-y[i],然后将这两个向量分开。但代码不起作用。

q=function(x){
for (i in 1:length(x)){
for (j in 1:length(x)){
g=x[j]-x[i]
print(as.vector(g))
}}}

我尝试print(g)而不是print(as.vector(g)),但它不起作用。当我使用print(g)时,它会给我个人结果。

无论如何要去做这个?谢谢。

1 个答案:

答案 0 :(得分:0)

我能够通过定义一个简单的x向量来运行你的函数,然后在定义函数之后,调用它并将x对象传递给它。这对你有用吗?

    x <- 1:3

    q <- function(x){
      for (i in 1:length(x)){
        for (j in 1:length(x)){
          g <- x[j]-x[i]
          print(g)
        }
      }
    }

    q(x)