R语言 如何绘制预测值

R语言 如何绘制预测值

在这篇文章中,我们将讨论如何在R编程语言中绘制预测值。

线性模型是使用线性回归技术,根据自变量来预测未知变量的值。它主要用于找出变量之间的关系和进行预测。lm()函数用于在R语言中对数据框架进行线性模型拟合。我们将预测的实际值与实际值绘制在一起,以了解这两个值的差异程度,这有助于我们确定模型的准确性。要做到这一点,我们在R语言中有以下方法。

方法1:使用Base R绘制预测值

为了在R语言中绘制预测值与实际值的对比,我们首先使用lm()函数将我们的数据框装入线性回归模型。lm()函数将回归函数和数据框作为参数,并返回线性模型。然后我们可以使用predict()函数来使用该线性模型来预测任何给定数据点的值。然后,我们将使用plot()函数在预测值和实际值之间绘制散点图,然后使用abline()函数添加线性对角线,以可视化预测值和实际值之间的差异。

语法

linear_model <- lm( regression_function, df)

plot( predict( linear_model), df$y)

abline(a = 0, b = 1)

其中。

  • regression_function: 决定了需要拟合的线性模型的函数。
  • df: 决定了用于预测的数据框架。
  • y: 决定了y轴变量。

例子: 这里是一个使用R基本方法的线性回归模型的实际值与预测值的关系图。

# create sample data frame
x <- rnorm(100)
y <- rnorm(100) + x
sample_data <- data.frame(x, y)
  
# fit data to a linear model
linear_model <- lm(y~x, sample_data )
  
# plot predicted values and actual values
plot(predict(linear_model), sample_data$y,
     xlab = "Predicted Values",
     ylab = "Observed Values")
abline(a = 0, b = 1, lwd=2,
       col = "green")

输出

如何在R语言中绘制预测值?

方法2:使用ggplot2包绘制预测值

为了在R语言中使用ggplot2包库绘制预测值与实际值的对比,我们首先使用lm()函数将我们的数据框装入线性回归模型。lm()函数将一个回归函数和数据框作为参数,并返回一个线性模型。然后我们制作一个数据框,其中包含预测值和实际值,以便绘制。为了得到预测值,我们可以使用predict()函数,使用该线性模型来预测任何给定数据点的值。然后,我们将通过使用ggplot()函数和geom_point()函数绘制预测值和实际值之间的散点图,然后使用geom_abline()函数添加一条线性对角线,以直观显示预测值和实际值之间的差异。

语法

linear_model <- lm( regression_function, df)

plot_data <- data.frame( predicted_data = predict(linear_model), actual_data= df$y )

ggplot( plot_data, aes( x=predicted_data, y=actual_data ) )+ geom_point()+ geom_abline(intercept =0, slope =1)

其中。

  • regression_function: 决定了需要拟合的线性模型的函数。
  • df: 决定了用于预测的数据框架。
  • y: 决定了y轴变量。

例子: 这里是使用ggplot2包的线性回归模型绘制的实际值与预测值的对比。

# create sample data frame
x1 <- rnorm(100)
x2 <- rnorm(100)
y <- rnorm(100) + x1 + x2
sample_data <- data.frame(x1, x2, y)
  
# fit data to a linear model
linear_model <- lm(y~x1+x2, sample_data )
  
# load library ggplot2
library(ggplot2)
  
# create dataframe with actual and predicted values
plot_data <- data.frame(Predicted_value = predict(linear_model),  
                       Observed_value = sample_data$y)
  
# plot predicted values and actual values
ggplot(plot_data, aes(x = Predicted_value, y = Observed_value)) +
                  geom_point() +
                 geom_abline(intercept = 0, slope = 1, color = "green")

输出

如何在R语言中绘制预测值?

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程