在R中使用“crossprod”时回收?
虽然我的函数工作正常,但我想知道在运行我的简单函数时如何避免下面的警告 警告消息:在numer/denom中:循环长度为1的数组 不推荐使用向量数组算法。使用c()或as.vector() 相反在R中使用“crossprod”时回收?,r,function,R,Function,虽然我的函数工作正常,但我想知道在运行我的简单函数时如何避免下面的警告 警告消息:在numer/denom中:循环长度为1的数组 不推荐使用向量数组算法。使用c()或as.vector() 相反 qq警告出现在return功能中 试一试 原因是denom是一个矩阵,number是一个原子向量。 我还以为不会有警告,但你做的手术似乎已经贬值了 qq <- function(f, df1, df2, N){ denom <- crossprod(df1, f) + df2
qq警告出现在return
功能中
试一试
原因是denom
是一个矩阵,number
是一个原子向量。
我还以为不会有警告,但你做的手术似乎已经贬值了
qq <- function(f, df1, df2, N){
denom <- crossprod(df1, f) + df2 + 1 # I suspect warning is from here?
numer <- (df1 * (f - 1))
return(numer / denom)
}
# Example of use:
qq(f = c(84.11, 4.05, 8.38), df1 = c(3, 1, 3), df2 = 24, N = 32)
return(numer / as.numeric(denom))