R语言数据探索与分析-中国GDP回归分析与预测

首先读取数据:

将GDP列转换为常规数字格式

可视化GDP数据

查看数据结构

确保数据类型是正确的

第一张图片展示了中国2002年到2021年间的GDP增长趋势,这是一个时间序列图,其中横轴表示年份,纵轴表示GDP(单位未标明,但通常是本国货币或美元)。从图中可以看出,这20年间,中国的GDP呈现出了显著的上升趋势,且增长速率在整个时间段内似乎是加速的,这可以从曲线的斜率增加看出。具体来看,GDP的增长不是线性的,而是有着一定的曲率,表明每年的增长量不是恒定的,而是随着时间的推移而增加。在2002年,GDP的值接近于图表纵轴的最低点,而到了2021年,它已经增长到接近顶部的位置。这种曲线上升的形态,特别是在后半段,可能表明经济增长的加速,可能是由于各种内外部因素的影响,如工业化进程加快、出口增加、内需扩大等。

进行线性回归分析

模型的公式是 GDP对年份(year)的线性回归,即 GDP ~ year。系数中,截距(Intercept)是负的,而年份(year)的系数是正的。年份的系数大约是11585326939,这意味着模型预测每过去一年,GDP平均增加约11585亿。标准误差(Std. Error)告诉我们每个系数估计值的精确度。在这里,年份的标准误差相对较小,表明估计值相当精确。t 值(t value)是系数除以标准误差得到的,用于测试每个系数的统计显著性。年份的t值非常高,表明年份对GDP的影响是统计上显著的。p 值(p-value)用于测试假设(在这个模型中是年份对GDP有影响)。年份的p值非常小,远小于0.05的常用显著性水平,这意味着年份的效果是非常显著的。残差标准误差(Residual standard error)表明实际数据点与拟合线的平均偏差大约是66820000000,这个数值的大小需要结合GDP的实际数值来看,但看起来误差相对于GDP的量级是较小的。拟合优度(R-squared)和调整后的拟合优度(Adjusted R-squared)分别是0.9911和0.9906,都非常接近1,这表明模型对数据的拟合度非常高,几乎所有的变异都可以由年份来解释。

总结来说,线性回归模型表明从2002年到2021年,中国GDP的增长与年份有着非常强的线性关系,模型的拟合度非常高。

随后预测2022年的GDP

"Predicted GDP for 2022: 26538180032062"

将预测值与实际2022年的GDP进行比较,2022年的为30250000000000

这张图展示了2022年中国GDP的预测值与实际值的对比。图中有两个柱状图,分别代表预测的GDP(红色)和实际的GDP(绿色),单位是万亿元人民币。

从图中可以看出,预测的GDP还是比较接近实际的GDP。但是有些些许的差距:

这种差异可能由多种因素造成,包括:

预测模型可能没有考虑某些重要的经济增长驱动因素。

模型可能未能捕捉到的非线性趋势或结构性变化。

2022年可能出现了特殊事件或变动(疫情等等),这些是在先前的数据中无法预见的。

本文代码:

R 复制代码
# 加载所需的库
library(ggplot2)
library(readr)
library(dplyr)
library(broom)

# 避免科学计数法
options(scipen = 999)
# 读取数据
gdp_data <- read_csv("C:/Users/Administrator/Desktop/GDP.csv")

# 将GDP列转换为常规数字格式
gdp_data$GDP <- format(gdp_data$GDP, scientific = FALSE)

# 再次查看数据
head(gdp_data, 10)

# 可视化GDP数据
# 查看数据结构
# 确保数据类型是正确的
gdp_data$year <- as.numeric(gdp_data$year)
gdp_data$GDP <- as.numeric(gdp_data$GDP)

# 使用plot函数绘制折线图
plot(gdp_data$year, gdp_data$GDP, type = "o", col = "blue",
     main = "China GDP from 2002 to 2021",
     xlab = "Year", ylab = "GDP (元)",
     pch = 16, lty = 1)



# 线性回归分析
gdp_model <- lm(GDP ~ year, data = gdp_data)

# 查看模型摘要
summary(gdp_model)

# 预测2022年的GDP
predicted_2022 <- predict(gdp_model, newdata = data.frame(year = 2022))

# 打印预测值
print(paste("Predicted GDP for 2022: ", predicted_2022))

# 将预测值与实际2022年的GDP进行比较
actual_2022 <- 121020700000000  # 您提供的2022年GDP数据
# 将预测值与实际2022年的GDP进行比较

# 2022年GDP的实际值和预测值
actual_2022 <- 30250000000000
predicted_2022 <- 26538180032062

# 将数值转换为万亿单位
actual_2022_trillion <- actual_2022 / 1e12
predicted_2022_trillion <- predicted_2022 / 1e12

# 创建一个包含这些值的向量
values <- c(predicted_2022_trillion, actual_2022_trillion)
names <- c("Predicted 2022", "Actual 2022")

# 绘制柱状图
barplot(values, names.arg = names, col = c("red", "green"),
        main = "Comparison of Predicted and Actual GDP for 2022 (in Trillions)",
        ylab = "GDP (Trillions of Yuan)",
        xlab = "Year 2022")
相关推荐
奔跑中的小象6 小时前
统信UOS + 天数AI卡部署SGLang服务手册
人工智能·uos·sglang·天数智芯
DevSecOps选型指南6 小时前
中国版Mythos,为何是悬镜安全灵脉CodeAI?
人工智能·安全
Shockang6 小时前
LangGraph 状态机实战
人工智能
刹那芳华19926 小时前
循环神经网络的从零开始实现(RNN)
人工智能·rnn·深度学习
阿童木写作6 小时前
跨境图片翻译工具多合一,批量图片视频字幕翻译加智能抠图
人工智能·python·音视频·语音识别
科技之门6 小时前
AI3D从建模到贴图、绑骨和动画的完整流程怎么做?V2Fun完整工作流指南
人工智能·3d·贴图
宇宙第一小趴菜6 小时前
二、机器学习的应用领域和发展史
人工智能·机器学习
前端开发江鸟6 小时前
我写过 MCP Server,却一直以为 MCP 只有 Tool
人工智能
天国梦7 小时前
自习室智能化升级避坑指南:天学网AI智习室方案实测与选型建议
大数据·人工智能
阿里云云原生7 小时前
可用性从 99.9% 跃升至 99.995%:畅捷通如何用 AI 重塑运维底座?
运维·网络·人工智能