R 不一致的参数
R non-conformable arguments
我很抱歉问了一个已经被问过一千次的问题,但我似乎仍然无法解决我的问题。
我正在尝试 运行 这个双循环:
rho=matrix(0,12,1)
for (i in 1:k){
for (j in 1:n-k){
temp=((1/(sigma^2))*(1/(n-i)))*((as.matrix(vR)[j,]-mean)%*%(as.matrix(vR)[i+j,]-mean))
rho[i,]=temp
}
}
我一直收到错误消息:
Error in (as.matrix(vR)[j, ] - mean) %*% (as.matrix(vR)[i + j, ] - mean) :
non-conformable arguments
此外,我的公式是:
(1/sigma^2) * (1/(t-k)) * sum[(vR(t)-mean)*(vR(t+k)-mean)]
总和是 "large sigma" 从 t=1 到 T-k
是否可以像我一样运行?
有一种更安全的方法来处理向量的 "matrix-multiplication",即 crossprod
函数。此外,我认为您的错误实际上可能在很大程度上源于 seq 函数的运算符优先级,“:”在“-”函数的内部循环索引设置中:
for (i in 1:k){
for (j in 1:(n-k)){ # note inner parentheses, safer to always use with "("
temp=((1/(sigma^2))*(1/(n-i)))*crossprod(vR[j,]-mean,vR[i+j,]-mean)
rho[i,]=temp
}
}
我很抱歉问了一个已经被问过一千次的问题,但我似乎仍然无法解决我的问题。
我正在尝试 运行 这个双循环:
rho=matrix(0,12,1)
for (i in 1:k){
for (j in 1:n-k){
temp=((1/(sigma^2))*(1/(n-i)))*((as.matrix(vR)[j,]-mean)%*%(as.matrix(vR)[i+j,]-mean))
rho[i,]=temp
}
}
我一直收到错误消息:
Error in (as.matrix(vR)[j, ] - mean) %*% (as.matrix(vR)[i + j, ] - mean) : non-conformable arguments
此外,我的公式是:
(1/sigma^2) * (1/(t-k)) * sum[(vR(t)-mean)*(vR(t+k)-mean)]
总和是 "large sigma" 从 t=1 到 T-k
是否可以像我一样运行?
有一种更安全的方法来处理向量的 "matrix-multiplication",即 crossprod
函数。此外,我认为您的错误实际上可能在很大程度上源于 seq 函数的运算符优先级,“:”在“-”函数的内部循环索引设置中:
for (i in 1:k){
for (j in 1:(n-k)){ # note inner parentheses, safer to always use with "("
temp=((1/(sigma^2))*(1/(n-i)))*crossprod(vR[j,]-mean,vR[i+j,]-mean)
rho[i,]=temp
}
}