Трудно сказать немного подробнее, но вы можете столкнуться с проблемами, потому что длина результирующего вектора будет отличаться от анализа к анализу. Например, один из них может привести к четырем основным компонентам, отвечающим вашим условиям, а третий - к основным компонентам. Фреймы данных, с другой стороны, прямоугольные angular, поэтому каждая строка должна иметь одинаковую длину, а каждый столбец - одинаковую длину, поэтому вы не можете создать фрейм данных, содержащий 3 столбца в одной строке и 4 в другой.
Пара простых опций с вектором, подобным вашему:
# your vector of pcs
x1 <- summary(prcomp)
1) Создайте фрейм данных, который соответствует максимальному количеству компонентов, полный NA, затем замените соответственно сохраняющие NA, где это необходимо.
# storage df
outDF <- data.frame(matrix(rep(NA, 8), ncol = 4))
# store
outDF[1, x1 < 0.85] <- x1[x1 < 0.85]
2) Хранить в виде списка, поскольку списки не обязательно должны быть прямоугольными angular
# storage list
outList <- list()
# store
outList[[1]] <- x1[x1 < 0.85]