Przewodnik po dt, qt, pt i rt w r
Rozkład t-Studenta jest jednym z najczęściej stosowanych rozkładów w statystyce. W tym samouczku wyjaśniono, jak pracować z rozkładem t Studenta w R przy użyciu funkcji dt() , qt() , pt() i rt() .
dt
Funkcja dt zwraca wartość funkcji gęstości prawdopodobieństwa (pdf) rozkładu t-Studenta przy danej zmiennej losowej x i stopniach swobody df . Składnia użycia dt jest następująca:
dt(x, df)
Poniższy kod demonstruje kilka przykładów dt w akcji:
#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
Zwykle, próbując rozwiązać pytania dotyczące prawdopodobieństwa, korzystając z rozkładu t-Studenta, często używasz pt zamiast dt . Użytecznym zastosowaniem dt jest jednak utworzenie wykresu rozkładu t Studenta w R. Poniższy kod ilustruje, jak to zrobić:
#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"))
Generuje to następujący wykres:
pkt
Funkcja pt zwraca wartość funkcji gęstości skumulowanej (cdf) rozkładu t-Studenta, przy danej zmiennej losowej x i stopniach swobody df . Składnia używania pnorm jest następująca:
pt(x, df)
Mówiąc najprościej, pt zwraca obszar na lewo od danej wartości x w rozkładzie t-Studenta. Jeśli interesuje Cię obszar na prawo od danej wartości x , możesz po prostu dodać argument less.tail = FALSE
pt(x, df, dolny.ogon = FAŁSZ)
Poniższe przykłady ilustrują, jak rozwiązać niektóre pytania dotyczące prawdopodobieństwa za pomocą pkt.
Przykład 1: Znajdź obszar na lewo od statystyki t o wartości -0,785 i 14 stopniach swobody.
pt(-0.785, 14)
#[1] 0.2227675
Przykład 2: Znajdź obszar na prawo od statystyki t o wartości -0,785 i 14 stopniach swobody.
#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
Przykład 3: Znajdź całkowitą powierzchnię w rozkładzie t-Studenta z 14 stopniami swobody położonymi na lewo od -0,785 lub na prawo od 0,785.
pt (-0.785, 14) + pt (0.785, 14, lower.tail = FALSE) #[1] 0.4455351
qt
Funkcja qt zwraca wartość odwrotnej funkcji gęstości skumulowanej (cdf) rozkładu t-Studenta, przy danej zmiennej losowej x i stopniach swobody df. Składnia użycia qt jest następująca:
qt(x, df)
Mówiąc najprościej, możesz użyć qt , aby dowiedzieć się, jaki jest wynik t p-tego kwantyla rozkładu t-Studenta.
Poniższy kod demonstruje kilka przykładów qt w akcji:
#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
Należy pamiętać, że wartości krytyczne znalezione przez qt będą odpowiadać wartościom krytycznym znalezionym w tabeli rozkładu t, a także wartościom krytycznym, które można znaleźć za pomocą kalkulatora odwrotnego rozkładu t.
rt
Funkcja rt generuje wektor zmiennych losowych zgodny z rozkładem t-Studenta, przy danej długości wektora n i stopniach swobody df . Składnia używania rt jest następująca:
rt(n, df)
Poniższy kod demonstruje kilka przykładów rt w akcji:
#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))
Generuje to następujące histogramy:
Zwróć uwagę, że szeroka dystrybucja jest szersza niż wąska dystrybucja. Rzeczywiście określiliśmy, że stopnie swobody w szerokim rozkładzie wynosiły 5 w porównaniu do 40 w wąskim rozkładzie. Im mniej stopni swobody, tym szerszy będzie rozkład t-Studenta.
Dalsza lektura:
Przewodnik po dnorm, pnorm, qnorm i rnorm w R
Przewodnik po dbinom, pbinom, qbinom i rbinom w R