如何计算 R 中 F 统计量的 P 值
F检验是一种统计检验,它产生在原假设下具有F分布的F统计量。本文重点介绍如何在 R 编程语言中计算 F 统计量的 P 值。
在 R 中查找 F 统计量的 P 值
R 为我们提供了 pf()函数,我们可以使用它来确定与 F 统计量相关的 p 值。该函数具有以下语法:
Syntax: pf(F_statistic, dataframe1, dataframe2, lower.tail = FALSE)
Parameters:
- F_statistic: It represents the value of the f-statistic
- dataframe1: It represents the degrees of freedom 1
- dataframe2: It represents the degrees of freedom 2
- lower.tail = TRUE: Returns the probability associated with the lower tail of the F distribution.
- lower.tail = FALSE: Doesn’t return the probability associated with the lower tail of the F distribution.
例子:
考虑具有以下参数的示例:
- fstat: 7
- df1: 4
- df2: 5
- lower.tail = FALSE
R
pf(7, 4, 5, lower.tail = FALSE)
R
# Create a dataset
dataset <- data.frame(distance = c(112, 217, 92, 98, 104),
emission = c(4.5, 9.8, 12.1, 3.2, 7.6),
mileage = c(15, 12, 16, 19, 21))
# Display the dataset
dataset
R
# Create a dataset
dataset <- data.frame(distance = c(112, 217, 92, 98, 104),
emission = c(4.5, 9.8, 12.1, 3.2, 7.6),
mileage = c(15, 12, 16, 19, 21))
# Fit a regression model
model <- lm(mileage ~ distance + emission, data = dataset)
# Display the output of the model
summary(model)
R
# Compute the p-value
pf(1.321, 2, 2, lower.tail = FALSE)
输出:
因此,与 F 统计量相关的 p 值等于 0.027。 F 检验也用于检验回归模型的整体显着性。
从 F 统计量计算回归模型的 p 值
考虑到我们有一个数据集,它显示了总行驶距离、产生的总排放量、最后获得的里程数:
R
# Create a dataset
dataset <- data.frame(distance = c(112, 217, 92, 98, 104),
emission = c(4.5, 9.8, 12.1, 3.2, 7.6),
mileage = c(15, 12, 16, 19, 21))
# Display the dataset
dataset
输出:
现在,我们可以使用距离和里程作为预测变量,里程作为响应变量,为这些数据拟合线性回归模型。为了拟合回归模型,R 为我们提供了 lm() ,我们可以使用它轻松拟合线性回归模型。它具有以下语法:
Syntax: lm( formula, dataframe )
Parameters:
- formula: It represents the formula for the linear model.
- dataframe: It represents a data frame that contains the data.
要打印线性模型的摘要,我们可以使用 summary()函数。此函数具有以下语法:
Syntax: summary(model)
Parameters: model: It represents a model
完整的源代码如下:
R
# Create a dataset
dataset <- data.frame(distance = c(112, 217, 92, 98, 104),
emission = c(4.5, 9.8, 12.1, 3.2, 7.6),
mileage = c(15, 12, 16, 19, 21))
# Fit a regression model
model <- lm(mileage ~ distance + emission, data = dataset)
# Display the output of the model
summary(model)
输出:
整体回归模型的 F 统计量等于 1.321。这个 F 统计量对于分子和分母有 2 个自由度。此 F 统计量的 p 值等于 0.4309。
我们可以借助以下代码计算这个等效的 p 值:
R
# Compute the p-value
pf(1.321, 2, 2, lower.tail = FALSE)
输出:
正如您在输出中看到的,我们得到了几乎相似的结果。