Добавление эллипсоидов вокруг групп в pca3d-графиках (R) - PullRequest
0 голосов
/ 10 января 2019

Я пытаюсь добавить эллипсоид вокруг групп в pca3d-plot. Мой сценарий до сих пор:

AllData <- read.csv("Datensatz")
Groups <- factor(AllData[,18])
Data <- AllData[, -c(0,18)] # delete column with non-numeric variables
Daten <- Data[, -c(1,1)] # delete row and column with non-numeric variables

Пример "AllData": > dput(head(AllData,5)) structure(list(ID = structure(1:5, .Label = c("E10A", "E10Bv", "E10C", "E10D", "E10E"), class = "factor"), Feinboden = c(48.61, 60.02, 50.12, 59.54, 66.73), Grobboden = c(51.39, 39.98, 49.88, 40.46, 33.27), T = c(3.56, 0.32, 2.51, 3.75, 3.54), Uf = c(9.76, 3.07, 10.09, 12.02, 12.84), Um = c(28.15, 12.52, 34.59, 31.49, 33.58), Ug = c(32.2, 28.47, 35.1, 29.77, 29.32), Sf = c(17.04, 27.12, 15.55, 19.68, 18.06), Sm = c(5.81, 25.33, 2.18, 3.3, 2.66), Sg = c(3.48, 3.17, 0, 0, 0), pH.H2O = c(4.2, 4.24, 4.22, 4.87, 4.69), pH.CaCl2 = c(3.39, 3.34, 3.42, 3.85, 4.04), C.N.Verhältnis = c(37.42, 25.02, 26.21, 23.16, 17.09), P.Gehalt = c(13, 88, 8.15, 3.61, 7.73), X15N = c(3.18, 0.46, 3.33, 3.72, 2.74), X15C = c(-26.4, -26.8, -27.4, -26.5, -25.8), Glühverlust = c(13.06, 87.76, 19.52, 6.96, 9.89), Cluster = structure(c(4L, 4L, 4L, 9L, 9L), .Label = c("AA", "BB", "CC", "e", "I", "II", "III", "IV", "V", "YY", "ZZ"), class = "factor"), Moose = c(0L, 1L, 0L, 0L, 0L), Flechte = c(1L, 0L, 0L, 0L, 0L )), row.names = c(NA, 5L), class = "data.frame")

"Daten" теперь имеет в общей сложности 32 строки и 18 столбцов, которые я использую для PCA.

summary(Groups) имеет следующий вывод:

 AA  BB  CC   e   I  II III  IV   V  YY  ZZ 
  1   1   1  14   4   2   2   2   3   1   1 

Следующие шаги в моем скрипте:

pca <- prcomp(Daten, scale=TRUE)
pca3d(pca, group=Groups, labels.col="grey", show.labels=TRUE, show.shadows=FALSE,
show.centroids=FALSE, show.group.labels=TRUE, show.plane=FALSE, show.ellipses=FALSE)

Теперь я попытался переключиться на show.centroids=TRUE, что может быть возможностью (я не уверен), чтобы получить что-то вроде эллипсоидов вокруг групп. Но я получаю только ошибку:

"Ошибка при переносе: аргумент длины 0"

Чем я пытался перейти на show.ellipses=TRUE, но чем я получил ошибку:

«Ошибка при переносе: старший младший номер 1 не является положительно определенным»

Может кто-нибудь помочь мне, как добавить эллипсоиды вокруг разных групп? А можно ли добавить эллипсоиды только для определенных групп? Потому что одна конкретная группа (группа «е») не должна получать эллипсоид. Я хочу использовать эллипсоиды (или «облака») в основном для визуализации кластеризации, которую я сделал в 3D-графике.

...