Een gids voor dt, qt, pt en rt in r

De Student’s t-verdeling is een van de meest gebruikte verdelingen in de statistiek. In deze tutorial wordt uitgelegd hoe u kunt werken met de Student t-distributie in R met behulp van de functies dt() , qt() , pt() en rt() .

dt

De functie dt retourneert de waarde van de waarschijnlijkheidsdichtheidsfunctie (pdf) van de Student’s t-verdeling, gegeven een bepaalde willekeurige variabele x en vrijheidsgraden df . De syntaxis voor het gebruik van dt is als volgt:

dt(x, df)

De volgende code demonstreert enkele voorbeelden van dt in actie:

 #find the value of the Student t distribution pdf at x = 0 with 20 degrees of freedom
dt(x = 0, df = 20)

#[1] 0.3939886

#by default, R assumes the first argument is x and the second argument is df
dt(0, 20)

#[1] 0.3939886
#find the value of the Student t distribution pdf at x = 1 with 30 degrees of freedom
dt(1, 30)

#[1] 0.2379933

Wanneer u vragen over waarschijnlijkheid probeert op te lossen met behulp van de Student’s t-verdeling, gebruikt u doorgaans pt in plaats van dt . Een nuttige toepassing van dt is echter het maken van een Student t-verdelingsplot in R. De volgende code illustreert hoe u dit kunt doen:

 #Create a sequence of 100 equally spaced numbers between -4 and 4
x <- seq(-4, 4, length=100)

#create a vector of values that shows the height of the probability distribution
#for each value in x, using 20 degrees of freedom
y <- dt(x = x, df = 20)

#plot x and y as a scatterplot with connected lines (type = "l") and add
#an x-axis with custom labels
plot(x,y, type = "l", lwd = 2, axes = FALSE, xlab = "", ylab = "")
axis(1, at = -3:3, labels = c("-3s", "-2s", "-1s", "mean", "1s", "2s", "3s"))

Dit levert het volgende plot op:

pt

De pt- functie retourneert de waarde van de cumulatieve dichtheidsfunctie (cdf) van de Student’s t-verdeling, gegeven een bepaalde willekeurige variabele x en vrijheidsgraden df . De syntaxis voor het gebruik van pnorm is als volgt:

pt(x, df)

Simpel gezegd retourneert pt het gebied links van een gegeven x- waarde in de Student’s t-verdeling. Als u geïnteresseerd bent in het gebied rechts van een bepaalde x- waarde, kunt u eenvoudigweg het argument lower.tail = FALSE toevoegen

pt(x, df, onder.staart = ONWAAR)

De volgende voorbeelden illustreren hoe u enkele waarschijnlijkheidsvragen kunt oplossen met behulp van pt.

Voorbeeld 1: Zoek het gebied links van een t-statistiek met een waarde van -0,785 en 14 vrijheidsgraden.

 pt(-0.785, 14)

#[1] 0.2227675

Voorbeeld 2: Zoek het gebied rechts van een t-statistiek met een waarde van -0,785 en 14 vrijheidsgraden.

 #the following approaches produce equivalent results

#1 - area to the left
1 - pt(-0.785, 14)

#[1] 0.7772325

#area to the right
pt(-0.785, 14, lower.tail = FALSE)

#[1] 0.7772325 

Voorbeeld 3: Zoek de totale oppervlakte in een Student’s t-verdeling met 14 vrijheidsgraden links van -0,785 of rechts van 0,785.

 pt (-0.785, 14) + pt (0.785, 14, lower.tail = FALSE)

#[1] 0.4455351

qt

De functie qt retourneert de waarde van de inverse cumulatieve dichtheidsfunctie (cdf) van de Student’s t-verdeling, gegeven een bepaalde willekeurige variabele x en vrijheidsgraden df. De syntaxis voor het gebruik van qt is als volgt:

qt(x,df)

In eenvoudige bewoordingen kun je qt gebruiken om erachter te komen wat de t-score van het p- de kwantiel van de Student’s t-verdeling is.

De volgende code demonstreert enkele voorbeelden van qt in actie:

 #find the t-score of the 99th quantile of the Student t distribution with df = 20
qt(.99, df = 20)

#[1][1]2.527977

#find the t-score of the 95th quantile of the Student t distribution with df = 20
qt(.95, df = 20)

#[1]1.724718

#find the t-score of the 90th quantile of the Student t distribution with df = 20
qt(.9, df = 20)

#[1]1.325341

Merk op dat de kritische waarden gevonden door qt overeenkomen met de kritische waarden gevonden in de t-verdelingstabel, evenals de kritische waarden die gevonden kunnen worden door de inverse t-verdelingscalculator.

rt

De functie rt genereert een vector van willekeurige variabelen die de Student’s t-verdeling volgt, gegeven een vectorlengte n en vrijheidsgraden df . De syntaxis voor het gebruik van rt is als volgt:

rt(n, df)

De volgende code demonstreert enkele voorbeelden van rt in actie:

 #generate a vector of 5 random variables that follows a Student t distribution
#with df = 20
rt(n = 5, df = 20)

#[1] -1.7422445 0.9560782 0.6635823 1.2122289 -0.7052825

#generate a vector of 1000 random variables that follows a Student t distribution
#with df = 40
narrowDistribution <- rt(1000, 40)

#generate a vector of 1000 random variables that follows a Student t distribution
#with df = 5
wideDistribution <- rt(1000, 5)

#generate two histograms to view these two distributions side by side, and specify
#50 bars in histogram,
par(mfrow=c(1, 2)) #one row, two columns
hist(narrowDistribution, breaks=50, xlim = c(-6, 4)) 
hist(wideDistribution, breaks=50, xlim = c(-6, 4))

Dit genereert de volgende histogrammen:

Merk op dat de brede distributie breder is dan de smalle distributie. We specificeerden inderdaad dat de vrijheidsgraden in de brede distributie 5 waren, vergeleken met 40 in de smalle distributie. Hoe minder vrijheidsgraden er zijn, hoe breder de Student’s t-verdeling zal zijn.

Verder lezen:
Een gids voor dnorm, pnorm, qnorm en rnorm in R
Een gids voor dbinom, pbinom, qbinom en rbinom in R

Einen Kommentar hinzufügen

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