我对 R 比较陌生,尽管我已经完成了大量简单的 R 编程。我认为这应该是一个简单的问题,但我似乎无法弄清楚。
更新:
情况是由于计算机上的内存限制,我需要对数据进行分段以进行回归分析。我基本上有三个相关的矩阵,分别称为 X (nxk)、y (nx 1) 和 Om (nxn) 我需要将这三个矩阵按行分解,以各种方式将它们相乘,然后将结果相加。由于 Om 的错误结构,一些组必须是 3 行,其他行 2 和其他 1 行。对于 3 组,我们将有:
Xi (3 xk)、yi (3 x 1) 和 Om3 (3 x 3)
我已经在 R 中构建了 Om1、Om2 和 Om3
Om1<-matrix(2)
vec1<-c(2,-1)
vec2<-c(-1,2)
Om2<-rbind(vec1,vec2)
vec3<-c(2,-1,0)
vec4<-c(-1,2,-1)
vec5<-c(0,-1,2)
Om3<-rbind(vec3,vec4, vec5)
现在的问题是我如何分解 X 和 y 以便我可以匹配 X、y 和 Om 的行。我在想我需要一个循环,但不能让它像这样工作:
for(i in 1:280){
assign(paste("xh", i, sep = ""), i)
}
for(i in 1:145){
xhi<- X[i,]
}
for(i in 146:195){
xhi<-X[ seq( from=i , length=2) , ]
}
for(i in 196:280){
xhi<-X[ seq( from=(i+49) , length=3) , ]
}
前 145 个 xi 对应于 Om1,接下来的 50 个 xi 对应于 Om2 ...我想我需要一种方法来索引它们,这与最终我需要总结 xi、yi 和近江对面
很抱歉这篇长篇文章试图彻底,任何建议将不胜感激