R语言 R-squared回归分析

R语言 R-squared回归分析

为了通过其他变量(自变量)预测一个变量的值(因变量),我们使用了一些模型,这些模型被称为回归模型。为了进一步计算这种预测的准确性,需要使用另一种数学工具,即R平方回归分析或决定系数。如果决定系数为1(或100%),意味着因变量的预测是完美和准确的。

R-square是残差平方和(SSres )与总平方和(SStot )的比较。残余平方和是由数据点与最佳拟合线之间垂直距离的平方之和计算出来的。

R编程中的R-squared回归分析

总的平方和是由数据点和平均线之间的垂直距离的平方和来计算的。

R编程中的R-squared回归分析

R-squared回归分析的公式

R-平方回归分析的公式如下。

R编程中的R-squared回归分析

R语言 找到决定系数(R)

在R语言中找出决定系数(R)是非常容易的。需要遵循的步骤是。

  • 在R语言中制作一个数据框。
  • 计算线性回归模型并将其保存在一个新的变量中。
  • 这样计算出来的新变量的摘要有一个决定系数或R平方参数,需要提取出来。
# Creating a data frame of exam marks
exam <- data.frame(name = c("ravi", "shaily", 
                            "arsh", "monu"),
                   math = c(87, 98, 67, 90),
                   estimated = c(65, 87, 56, 100))
  
# Printing data frame
exam
  
# Calculating the linear regression model
model = lm(math~estimated, data = exam)
  
# Extracting R-squared parameter from summary
summary(model)$r.squared

输出

    name   math   estimated
1   ravi   87        65
2 shaily   98        87
3   arsh   67        56
4   monu   90       100

[1] 0.5672797

注: 如果预测准确,生成的R-squared回归值为1。

# Creating a data frame of exam marks
exam <- data.frame(name = c("ravi", "shaily",
                             "arsh", "monu"), 
                   math = c(87, 98, 67, 90),
                   estimated = c(87, 98, 67, 90))
  
# Printing data frame
exam
  
# Calculating the linear regression model
model = lm(math~estimated, data = exam)
  
# Extracting R-squared parameter from summary
summary(model)$r.squared

输出

    name   math   estimated
1   ravi   87        87
2 shaily   98        98
3   arsh   67        67
4   monu   90       90

[1] 1

使用R-square方法的局限性

  • 当新的变量被添加到模型中时,r-square的值总是增加或保持不变,而不检测这个新添加的变量的显著性(即r-square的值在添加到模型中的新属性时从未减少)。因此,不显著的属性也可以被添加到模型中而增加r-square值。
  • 这是因为SStot 总是恒定的,而回归模型试图通过寻找与这个新属性的一些相关性来减少SSres 的值,因此r-square的总体值会增加,这可能导致一个糟糕的回归模型。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程