У меня есть список симметричных матриц, для которых я хочу использовать только нижний треугольник:
my_list
$m1
V1 V2 V3 V4 V5
[1,] 1.00 0.22 0.27 0.30 0.35
[2,] 0.22 1.00 0.33 0.35 0.15
[3,] 0.27 0.33 1.00 0.44 0.44
[4,] 0.30 0.35 0.44 1.00 0.44
[5,] 0.35 0.15 0.44 0.44 1.00
$m2
V1 V2 V3 V4 V5
[1,] 1.00 0.16 0.34 0.26 0.23
[2,] 0.16 1.00 0.33 0.20 0.21
[3,] 0.34 0.33 1.00 0.34 0.44
[4,] 0.26 0.20 0.34 1.00 0.18
[5,] 0.23 0.21 0.44 0.18 1.00`
Чтобы получить нижний треугольник, я сначала составил список логических матриц, используя
lowtri <- lapply(DATA_RSAbrain,lower.tri)
[,1] [,2] [,3] [,4] [,5]
[1,] FALSE FALSE FALSE FALSE FALSE
[2,] TRUE FALSE FALSE FALSE FALSE
[3,] TRUE TRUE FALSE FALSE FALSE
[4,] TRUE TRUE TRUE FALSE FALSE
[5,] TRUE TRUE TRUE TRUE FALSE
[,1] [,2] [,3] [,4] [,5]
[1,] FALSE FALSE FALSE FALSE FALSE
[2,] TRUE FALSE FALSE FALSE FALSE
[3,] TRUE TRUE FALSE FALSE FALSE
[4,] TRUE TRUE TRUE FALSE FALSE
[5,] TRUE TRUE TRUE TRUE FALSE
Я хочу применить этот список логических матриц, чтобы получить список векторов со значениями из нижнего треугольника («ИСТИНА»).
Я пробовал несколько способов, например,
my_list[lowtri]
Но я не смог понять, как это сделать.