So führen sie eine quantilnormalisierung in r durch


In der Statistik ist die Quantilnormalisierung eine Methode, die zwei Verteilungen hinsichtlich ihrer statistischen Eigenschaften identisch macht.

Das folgende Beispiel zeigt, wie eine Quantilnormalisierung in R durchgeführt wird.

Beispiel: Quantilnormalisierung in R

Angenommen, wir erstellen in R den folgenden Datenrahmen, der zwei Spalten enthält:

 #make this example reproducible
set. seeds (0)

#create data frame with two columns
df <- data. frame (x=rnorm(1000),
                 y=rnorm(1000))

#view first six rows of data frame
head(df)

           xy
1 1.2629543 -0.28685156
2 -0.3262334 1.84110689
3 1.3297993 -0.15676431
4 1.2724293 -1.38980264
5 0.4146414 -1.47310399
6 -1.5399500 -0.06951893

Wir können die Funktionen sapply() und quantile() verwenden, um die Quantile für x und y zu berechnen:

 #calculate quantiles for x and y
sapply(df, function(x) quantile(x, probs = seq(0, 1, 1/4)))

               xy
0% -3.23638573 -3.04536393
25% -0.70845589 -0.73331907
50% -0.05887078 -0.03181533
75% 0.68763873 0.71755969
100% 3.26641452 3.03903341

Beachten Sie, dass x und y ähnliche Werte für die Quantile haben, aber keine identischen Werte.

Beispielsweise beträgt der 25. Perzentilwert für x -0,708 und der 25. Perzentilwert für y -0,7333 .

Um eine Quantilnormalisierung durchzuführen, können wir die Funktion normalize.quantiles() aus dem preprocessCore- Paket in R verwenden:

 library (preprocessCore)

#perform quantile normalization
df_norm <- as. data . frame ( normalize.quantiles ( as.matrix (df)))

#rename data frame columns
names(df_norm) <- c(' x ', ' y ')

#view first six row of new data frame
head(df_norm)

           xy
1 1.2632137 -0.28520228
2 -0.3469744 1.82440519
3 1.3465807 -0.16471644
4 1.2692599 -1.34472394
5 0.4161133 -1.43717759
6 -1.6269731 -0.07906793

Anschließend können wir mit folgendem Code die Quantile für x und y erneut berechnen:

 #calculate quantiles for x and y
sapply(df_norm, function(x) quantile(x, probs = seq(0, 1, 1/4)))

               xy
0% -3.14087483 -3.14087483
25% -0.72088748 -0.72088748
50% -0.04534305 -0.04534305
75% 0.70259921 0.70259921
100% 3.15272396 3.15272396

Beachten Sie, dass die Quantile jetzt für x und y gleich sind.

Wir würden sagen, dass x und y quantilnormalisiert wurden. Mit anderen Worten: Die beiden Verteilungen sind nun hinsichtlich ihrer statistischen Eigenschaften identisch.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in R ausführen:

So normalisieren Sie Daten in R
So berechnen Sie Perzentile in R
So verwenden Sie die Funktion quantile() in R

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert