我得到什么“未使用的参数”?

时间:2014-10-26 20:27:54

标签: r

我正在尝试将一个函数应用于矩阵,但是我知道我有"未使用的参数"在 应用功能。我不知道我要添加什么来使apply函数工作。它说 我需要定义n,y或z值,它们在little.fun中。没有详细说明这是问题的功能:

MyFun = function (a,b) {

  mm=t(matrix(a,ncol=b-1))

  apply(mm, FUN=little.fun, MARGIN=1)  

  return(mm) 
}

我需要做些什么来完成这项工作?

谢谢!

编辑:

有问题的功能:

little.fun <- function(x,n) {  

  if (x==1) return(0) 
  y <- c(0,1)

  while (length(y) < x)     
  {
  position <- length(y)
  new <- y[position] + y[position-1]
  y <- c(y,new)  } 

  if(length(seq(n))>length(seq(y)))   
  {
    z = (rep(y,x,length.out=n)) 
  }else{  
    tail(y,n)
  }
   if((!tail(y,1) %in% tail(z,1))) warning("Recycling is not full!") 
  return(z) 
}

1 个答案:

答案 0 :(得分:0)

这会让你更接近,但还有其他问题。您永远不会在z行中little.function分配tail(y,n)little.fun <- function(x,n) { if (x==1) return(0) y <- c(0,1) while (length(y) < x) { position <- length(y) new <- y[position] + y[position-1] y <- c(y,new) } if(length(seq(n))>length(seq(y))) { z = (rep(y,x,length.out=n)) }else{ z <- tail(y,n) } if((!tail(y,1) %in% tail(z,1))) warning("Recycling is not full!") return(z) } MyFun = function (a, b, n) { mm=t(matrix(a,ncol=b-1)) mm <- apply(mm, FUN=little.fun, n=n, MARGIN=1) return(mm) } MyFun(a=c(10,20,30), b = 4, n=4) ## [,1] [,2] [,3] ## [1,] 8 987 121393 ## [2,] 13 1597 196418 ## [3,] 21 2584 317811 ## [4,] 34 4181 514229

{{1}}