У меня есть набор из 94 матриц в списке в R. Каждая матрица имеет разный размер; Пример показан ниже:
> summary(full_matrix)
Length Class Mode
Alex_1 64 -none- numeric
Alex_10 2500 -none- numeric
Alex_11 2916 -none- numeric
Alex_12 20736 -none- numeric
Alex_13 28900 -none- numeric
Alex_14 62500 -none- numeric
Alex_15 93025 -none- numeric
Alex_2 100 -none- numeric
Alex_3 25 -none- numeric
Alex_4 1225 -none- numeric
Alex_5 2304 -none- numeric
Alex_6 1849 -none- numeric
Я хочу извлечь данные из каждой матрицы, используя lapply()
. Я выполняю кластерный анализ для каждой матрицы, который генерирует подмножество кластеров для каждой. Я могу сделать это, используя следующий код:
library(pvclust)
clustering_data <- lapply(full_matrix, FUN = function(element) {
result <- pvclust(element, method.dist="cor", method.hclust="average", nboot=1000, parallel=TRUE)
output <- pvpick(result, alpha=0.95, pv="au", type="geq", max.only=TRUE)
})
Для clustering_data[[1]]
, например, это дает мне:
> clustering_data[[1]]
$clusters
$clusters[[1]]
[1] "bah" "hello" "huh" "ooh" "wee" "woo"
$edges
[1] 5
Проблема в том, что мне нужно иметь возможность определить имя исходной матрицы (Alex_1
, Alex_2
, et c), из которой генерируется кластер, и я не могу понять, как это сделать. Я сделал это для предыдущей функции lapply()
, используя df %>% split(., f = .$var1)
, но я не могу понять это, когда объект находится в списке.