我从其他数据中提取了一个固定维度的矩阵,并希望在此矩阵的末端有效地添加零和行的零,因为我重复了1000多次,现在我使用了一个循环和cbind和rbind。有没有更简单的方法呢?
##my actual matrix is real data of fixed dimension.. so i can't simply
##initialize a larger matrix like I could in this example..
my_matrix <- matrix(1,ncol=10,nrow=10)
for(i in 1:10){
my_matrix <- cbind(my_matrix,0)
my_matrix <- rbind(my_matrix,0)
}
答案 0 :(得分:3)
for循环中的附加cbind
和rbind
非常慢。这样做是这样的:
new_mat <- matrix(0, ncol=20,nrow=20)
new_mat[1:nrow(my_matrix), 1:ncol(my_matrix)] <- my_matrix
说明:创建所需尺寸的零矩阵,然后用数据替换相关的子集区域