给定维度A
的矩阵n x n
,我的目标是获取所有子矩阵A[1:mid, (mid+1):n]
并将它们转换为向量列表。此处mid
从1
到n-1
。
例如,如果A = matrix(1:16, 4, 4)
,则结果为res = list(as.vector(A[1:1,2:4]), as.vector(A[1:2,3:4]), as.vector(A[1:3,4:4]))
。 for循环可以实现这一点,但n
很大时需要很长时间。
答案 0 :(得分:1)
创建一个在apply中执行此操作的函数:
solve=function(n,x){
c(x[1:n,(n+1):dim(x)[2]])
}
sapply(1:3,solve,x=A)