我有nxn类型的矩阵在哪里n = 100左右.
mat <- matrix (1:10000, nrow=100)
rownames (mat) <- paste ("I", 1:100, sep = "")
colnames (mat) <- paste ("I", 1:100, sep = "")
Run Code Online (Sandbox Code Playgroud)
我想选择特定的行(或列)并创建一个小的nxn矩阵.
# for example rows selected:
c(1, 20, 33, 44, 64).
Run Code Online (Sandbox Code Playgroud)
因此得到的矩阵将循环如下:
I1 I20 I33 I44 I64
I1
I20
I33
I44
I64
Run Code Online (Sandbox Code Playgroud)
有办法吗?
只需直接选择它们即可 [row,col]
indices <- c(1, 20, 33, 44, 64)
mat[indices,indices]
> mat[indices,indices]
I1 I20 I33 I44 I64
I1 1 1901 3201 4301 6301
I20 20 1920 3220 4320 6320
I33 33 1933 3233 4333 6333
I44 44 1944 3244 4344 6344
I64 64 1964 3264 4364 6364
Run Code Online (Sandbox Code Playgroud)