Hauptkomponentenanalyse mit Gruppendaten


7

In meinem Experiment habe ich 30 verschiedene Akzessionen einer Art verwendet. Eine Gruppe ist von Dürre betroffen und die andere Gruppe ist die Kontrolle. Ich habe Daten zu 6 verschiedenen Parametern gesammelt. Ich möchte wissen, welcher Beitritt toleranter oder anfälliger ist, welcher Beitritt von welcher Variablen (Parameter) stärker betroffen ist und welche Variable am kritischsten ist usw. Kann ich die Hauptkomponentenanalyse verwenden? Sollte ich Daten während der PCA-Analyse kombinieren oder Behandlungsdaten von der Kontrollgruppe abziehen? oder wie kann ich mit beiden Gruppendaten PCR machen?

Antworten:


2

Im Allgemeinen würde ich kein Problem sehen, warum Sie keine PCA durchführen konnten , um Ihren multivariaten Datensatz zu visualisieren und zu interpretieren (da Sie jedoch keine Daten angegeben haben, kann ich nicht sicher sagen). Was Ihre zweite Frage betrifft, würde ich die beiden Gruppen ( drought, control) behalten und sie nicht voneinander subtrahieren. Auf diese Weise können Sie sehen, ob sich die Komponentenbewertungen (im Diagramm als Punkte dargestellt) gruppieren und in welcher Beziehung die Komponentenladungen (im Diagramm als Vektoren dargestellt) zu ihnen stehen.

Hier ein Beispiel, um zu veranschaulichen, was ich meine (auch Ihre dritte Frage):

Generieren Sie einen Beispieldatensatz (basierend auf Ihrer Beschreibung):

set.seed(13)
d <- data.frame(
  treatment = rep(c("drought", "control"), each = 15),
  y1 = rnorm(30, 3, 1),
  y2 = rnorm(30, 6, 3),
  y3 = rnorm(30, 4, 2),
  y4 = rnorm(30, 9, 4),
  y5 = rnorm(30, 5, 2),
  y6 = rnorm(30, 12, 5)
)

Die folgenden Schritte können auf viele verschiedene Arten (möglicherweise auch besser und effizienter) mit verschiedenen RPaketen erreicht werden. Aber hier ist, was normalerweise für mich funktioniert:

PCA mit FactoMineR :

require(FactoMineR)
my.pca = PCA(d[, c(2:7)], scale.unit = T, graph = F)

# EXTRACTING VALUES FROM my.pca FOR PLOT BELOW
PC1.ind <- my.pca$ind$coord[,1]
PC2.ind <- my.pca$ind$coord[,2]
PC1.var <- my.pca$var$coord[,1]
PC2.var <- my.pca$var$coord[,2]
PC1.expl <- round(my.pca$eig[1,2],2)
PC2.expl <- round(my.pca$eig[2,2],2)
Treatment <- factor(d$treatment,levels=c('drought', 'control'))
labs.var<- rownames(my.pca$var$coord)

Erstellen Sie das Grundstück mit dem ggplot2Paket:

require(ggplot2)
require(grid)
ggplot() +
  geom_point(aes(x = PC1.ind, y = PC2.ind, fill = Treatment), colour='black', pch = 21,size = 2.2) + 
  scale_fill_manual(values = c("red", "blue")) +   
  coord_fixed(ratio = 1) +
  geom_segment(aes(x = 0, y = 0, xend = PC1.var*2.8, yend = PC2.var*2.8), arrow = arrow(length = unit(1/2, 'picas')), color = "grey30") + 
  geom_text(aes(x = PC1.var*3.2, y = PC2.var*3.2),label = labs.var, size = 3) + 
  xlab(paste('PC1 (',PC1.expl,'%',')', sep ='')) + 
  ylab(paste('PC2 (',PC2.expl,'%',')', sep ='')) +
  ggtitle("Some title")

Geben Sie hier die Bildbeschreibung ein

Die Vektoren stellen Komponentenladungen dar, bei denen es sich um die Korrelationen der Hauptkomponenten mit den ursprünglichen Variablen handelt. Die Stärke der Korrelation wird durch die Vektorlänge angegeben, und die Richtung gibt an, welche Akzessionen für die ursprünglichen Variablen hohe Werte haben.

Außerdem würde ich vorschlagen, hier nach weiteren Informationen zur Interpretation von PCAs im Allgemeinen zu suchen (falls dies überhaupt erforderlich ist).

Auch da Sie Gruppen vorbestimmt, das heißt droughtund controlSie könnten auch einen Blick auf haben lineare Diskriminanzanalyse (LDA). Sowohl PCA als auch LDA sind rotationsbasierte Techniken. Während PCA versucht, die im Datensatz erläuterte Gesamtvarianz zu maximieren, maximiert LDA die Trennung (oder Unterscheidung) zwischen Gruppen. Weitere Informationen finden Sie beispielsweise in der candiscFunktion im candiscPaket oder in der lda()Funktion im MASSPaket (beide in R).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.