R-Funktionen pnorm, dnorm, qnorm, rnorm

Der Umgang mit Wahrscheinlichkeitsverteilungen ist eine grundlegende Fähigkeit bei statistischen Auswertungen oder Beratungen mit R. Die Programmiersprache R verfügt über eine Menge an Funktionen zum Rechnen mit Wahrscheinlichkeitsverteilungen. Wir demonstrieren Ihnen den Umgang mit diesen Funktionen am Beispiel der bekannten Normalverteilung.

 

Zum Umgang mit der Normalverteilung verfügt R über die 4 Funktionen dnorm(), pnorm(), qnorm() und rnorm(). Diese 4 Funktionen erfüllen die folgenden Zwecke: 

 

Funktion dnorm() in R

Das in dnorm() steht für Density. Density bezeichnet auf Englisch die Wahrscheinlichkeitsdichte. Die Funktion dnorm taugt also zur Berechnung von Werten der Wahrscheinlichkeitsdichte einer Normalverteilung.

 

Nehmen wir z.B. an, Sie möchten für eine Normalverteilung mit Erwartungswert 5 und Standardabweichung 2 den Wert der Wahrscheinlichkeitsdichte an der Stelle x=3 berechnen. Dazu geben Sie in die R-Konsole den folgenden Befehl ein:

 

dnorm(3,m=5,sd=2)

 

Wenn Sie diesen Befehl in die R-Konsole eingegeben haben, dann erhalten Sie folgenden Output:

 

Wir sehen im Output, dass das Ergebnis bei 0.121 liegt, d.h. dass die Wahrscheinlichkeitsdichte dieser Normalverteilung Stelle x bei 0.121 liegt.

Was bedeutet nun dieser Wert? Betrachten Sie hierzu die folgende Abbildung:

 

In der Abbildung dargestellt ist in Blau die Wahrscheinlichkeitsdichte einer Normalverteilung mit m=5 und sd=2. An der Stelle x=3 hat die Dichte eine Höhe von 0.121, was mit der roten Linie dargestellt ist.

Die Funktion dnorm() berechnet also einfach die Höhe der Wahrscheinlichkeitsdichte an einer gegebenen Stelle x.

 

Funktion pnorm() in R

Das p in pnorm() steht für probability, also Wahrscheinlichkeit. Die Funktion pnorm wird also verwendet, um bestimmte Wahrscheinlichkeiten für eine Normalverteilung zu berechnen.   

Wir betrachten wieder eine Normalverteilung mit Erwartungswert 5 und Standardabweichung 2 und verwenden den folgenden R-Befehl:

 

pnorm(6,m=5,sd=2)

 

Das Argument x=6 im pnorm-Befehl bedeutet, dass wir die Wahrscheinlichkeit dafür berechnen möchten, dass die Normalverteilung einen Wert kleiner oder gleich 6 ergibt. 

Die Eingabe des Befehls ergibt den Folgenden Output:

Das Ergebnis ist 0.691, d.h. die Wahrscheinlichkeit dafür, dass wir bei einer Normalverteilung mit Mittelwert 5 und Standardabweichung 2 einen Wert von 6 oder niedriger erhalten, beträgt 0.691. 

Was bedeutet nun dieser Wert? Schauen Sie sich dazu bitte die folgende Abbildung an:  

 

Der Wert 0.691, den wir als Ergebnis der pnorm-Funktion erhalten haben, ist in der Abbildung als rötliche Fläche dargestellt. Der Flächeninhalt der Fläche unter der Kurve links vom Wert x=6 beträgt also 0.691.

Als Formel ausgedrückt berechnet die Funktion pnorm in diesem Beispiel also die Wahrscheinlichkeit P(X  6) = 0.691.  

  

Funktion qnorm() in R

Der Buchstabe in der Funktion qnorm() steht für Quantil. Die Funktion qnorm eignet sich somit zur Berechnung von Quantilen für eine Normalverteilung.

Die Quantilfunktion qnorm ist das Gegenteil der eben besprochenen  Wahrscheinlichkeitsfunktion pnorm:

  • pnorm berechnet für einen gegebenen Wert x die Wahrscheinlichkeit bis zu diesem Wert x. Im obigen Beispiel also für x=6 die Wahrscheinlichkeit P(X  6) = 0.691.
  • qnorm berechnet umgekehrt für eine gegebene Wahrscheinlichkeit den Wert x, bei dem diese Wahrscheinlichkeit erreicht wird. Gibt man in die Funktion qnorm also die Wahrscheinlichkeit 0.691 ein, dann wird man als Ergebnis 6 erhalten.

Um dies zu überprüfen, geben wir in die R-Konsole den Folgenden Befehl ein:

 

qnorm(0.691,m=5,sd=2)

 

Als Ergebnis erhalten wir folgenden Output:

Dieser Wert (gerundet auf 2 Stellen) entspricht dem Wert 6, den wir erwartet haben. Die Funktion qnorm berechnet also für die Wahrscheinlichkeit 0.691 den Wert 6, da für diese Zahlen gilt: P(X ≤ 6) = 0.691.

 

Funktion rnorm() in R

Das in rnorm steht für random numbers, also Zufallszahlen. Die Funktion rnorm wird daher verwendet, um künstliche Zufallszahlen zu simulieren.

Als Beispiel möchten wir z.B. 80 Zufallszahlen aus einer Normalverteilung mit Erwartungswert 5 und Standardabweichung 2 erzeugen. 

Hierzu geben Sie den folgenden Befehl in die R-Konsole ein:

 

rnorm(80,m=5,sd=2)

 

Als Ergebnis erhalten Sie den folgenden Output:

 

 

Im Output ist zu sehen, dass durch Ausführung des Befehls 80 schöne Zufallszahlen produziert wurden.