Посібник із dt, qt, pt і rt у r

Розподіл Стьюдента є одним із найбільш часто використовуваних розподілів у статистиці. У цьому посібнику пояснюється, як працювати з t-розподілом Стьюдента в R за допомогою функцій dt() , qt() , pt() і rt() .

dt

Функція dt повертає значення функції щільності ймовірності (pdf) t-розподілу Стьюдента за певної випадкової величини x і ступенів свободи df . Синтаксис використання dt такий:

dt(x, df)

Наступний код демонструє кілька прикладів dt у дії:

 #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

Як правило, намагаючись розв’язати питання про ймовірність за допомогою t-розподілу Стьюдента, ви часто використовуєте pt замість dt . Однак корисним застосуванням dt є створення діаграми t розподілу Стьюдента в R. Наступний код ілюструє, як це зробити:

 #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"))

Це генерує такий сюжет:

пт

Функція pt повертає значення кумулятивної функції щільності (cdf) t-розподілу Стьюдента за певної випадкової величини x і ступенів свободи df . Синтаксис використання pnorm такий:

pt(x, df)

Простіше кажучи, pt повертає площу ліворуч від даного значення x у t-розподілі Стьюдента. Якщо вас цікавить область праворуч від заданого значення x , ви можете просто додати аргумент lower.tail = FALSE

pt(x, df, lower.tail = FALSE)

Наступні приклади ілюструють, як розв’язувати деякі ймовірнісні запитання за допомогою pt.

Приклад 1. Знайдіть площу ліворуч від t-статистики зі значенням -0,785 і 14 ступенями свободи.

 pt(-0.785, 14)

#[1] 0.2227675

Приклад 2: Знайдіть площу праворуч від t-статистики зі значенням -0,785 і 14 ступенями свободи.

 #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 

Приклад 3: Знайдіть загальну площу в t-розподілі Стьюдента з 14 ступенями свободи, розташованими ліворуч від -0,785 або праворуч від 0,785.

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

#[1] 0.4455351

qt

Функція qt повертає значення оберненої інтегральної функції щільності (cdf) t-розподілу Стьюдента за певної випадкової величини x і ступенів свободи df. Синтаксис використання qt такий:

qt(x, df)

Простіше кажучи, ви можете використовувати qt , щоб дізнатися, яким є t-показник p-го квантиля t-розподілу Стьюдента.

Наступний код демонструє кілька прикладів qt у дії:

 #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

Зверніть увагу, що критичні значення, знайдені qt, відповідатимуть критичним значенням, знайденим у таблиці t-розподілу, а також критичним значенням, які можна знайти за допомогою калькулятора зворотного t-розподілу.

кімнатна температура

Функція rt генерує вектор випадкових величин, який слідує t-розподілу Стьюдента з заданою довжиною вектора n і ступенями свободи df . Синтаксис використання rt такий:

rt(n, df)

Наступний код демонструє деякі приклади rt у дії:

 #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))

Це генерує такі гістограми:

Зверніть увагу, що широкий розподіл ширший за вузький. Дійсно, ми вказали, що ступені свободи в широкому розподілі становили 5 порівняно з 40 у вузькому розподілі. Чим менше ступенів свободи, тим ширшим буде розподіл t Стьюдента.

Подальше читання:
Посібник із dnorm, pnorm, qnorm і rnorm у R
Посібник з dbinom, pbinom, qbinom і rbinom у R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *