R语言分析任务:

有需要实验报告的可CSDN 主页个人私信

《大数据统计分析软件(R语言)》

实  验  报  告

指导教师:         

专    业:         

班    级:                   

姓    名:                    

学    号:                    

完成时间:                    

实验目的

掌握数据读入的各类函数;简单的数据处理:新变量的生成,数据集筛选排序,数据集合并。

掌握dplyr包中的主要函数。

掌握绘图的主要函数。

掌握数据整理、描述性统计分析、回归等,较为完整的数据分析过程。

实验内容

读入数据集:“(1)2002-2022年网民数量.csv”

  1. 计算半年度网民数量增长率;
# 引入所需的库library(readr)library(dplyr)library(lubridate)# 读取数据# data <- read_csv("(1)2002-2022年网民数量.csv")data <- read_csv("(1)2002-2022年网民数量.csv", locale = locale(encoding = "GB2312"))# 使用head函数查看数据前10行head(data, 10)# 重命名列名data <- data %>%rename(时间 = 时间,网民数量 = `网民数量(万人)`,互联网普及率 = `互联网普及率`)# 将时间转换为日期data$时间 <- dmy(paste0("01-", data$时间), tz = "UTC")# 将互联网普及率转换为数值类型data$互联网普及率 <- as.numeric(gsub("%", "", data$互联网普及率)) / 100# 计算半年度网民数量增长率data <- data %>%arrange(时间) %>%mutate(增长率 = (网民数量 - lag(网民数量)) / lag(网民数量))# 使用head函数查看数据前10行head(data, 10)

  1. 根据网民数量、网民数量增长率绘制双轴图,网民数量用柱状图表示,网民数量增长率用折线图表示;

       双轴图如图1所示:

图1双轴图

       代码如下:

# 将增长率列转换为数值类型
data$增长率 <- as.numeric(data$增长率)# 移除第一个NA值
data <- data[-1, ]# 绘制图表
# 输出增长率的数值
print(data$增长率)ggplot(data, aes(x = 时间)) +geom_col(aes(y = 网民数量), fill = "blue") +geom_line(aes(y = 增长率 * 100000, color = "增长率"), size = 1) +  # 增大增长率的显示范围scale_y_continuous(name = "网民数量(万人)", sec.axis = sec_axis(~./100000, name = "增长率 (%)")) +theme_minimal() +labs(color = "指标")

  1. 根据图形说明我国网民规模的变化趋势与特征。

     从图形可以看出,我国网民数量呈现出明显的增长趋势。从2002年到2022年底,网民数量从约4580万人增长到约106744万人,增长了近23倍。这表明互联网的普及程度不断提高,越来越多的人开始使用互联网。

增长率特征:增长率是描述网民数量增长速度的指标。从图形中可以看出,增长率在不同时间段内有所波动。初期增长率较高,随着网民数量的增加,增长率逐渐趋于平缓。可以观察到,在2002年到2007年初期,增长率呈现出较大的波动,而在2014年后增长率相对较稳定。

     互联网普及率变化:互联网普及率是衡量互联网在整个人口中普及程度的指标。根据数据,互联网普及率从2002年的0.036增长到2022年底的0.756。这显示了互联网的普及程度不断提高,越来越多的人开始接触和使用互联网。

     综上所述,通过观察图形,我们可以看到我国网民规模的变化趋势是逐年增长,并且增长率逐渐稳定。互联网普及率也在不断提高,显示出我国互联网发展的活跃态势。


读入数据集:“(2)2007-2022年接入方式.csv”
与“(1)2002-2022年网民数量.csv”进行合并
代码如下:# 读取数据集
data1 <- read.csv("(1)2002-2022年网民数量.csv")
data2 <- read.csv("(2)2007-2022年接入方式.csv")
# 合并数据集
merged_data <- merge(data1, data2, by = "时间")
head(merged_data, 10)
# 保存合并后的数据集为CSV文件
write.csv(merged_data, "合并后数据.csv", row.names = FALSE)

前十个数据结果显示如图2所示:

图2合并后前十条数据

  1. 计算出手机上网比例、电视网民数、台式电脑网民数、笔记本电脑网民数、平板电脑网民数(不同接入方式人数有重合,总数会大于真实网民数量)

代码如下:

# 读取合并后的数据集
merged_data <- read.csv("合并后数据.csv")
# 计算手机上网比例
merged_data$手机上网比例 <- as.numeric(gsub("%", "", merged_data$手机网民数量.万人.)) / merged_data$网民数量.万人. * 100
# 将因子列转换为数值型
merged_data$电视网民数 <- as.numeric(gsub("%", "", merged_data$电视上网比例))
merged_data$台式电脑网民数 <- as.numeric(gsub("%", "", merged_data$台式电脑上网比例))
merged_data$笔记本电脑网民数 <- as.numeric(gsub("%", "", merged_data$笔记本电脑上网比例))
merged_data$平板电脑网民数 <- as.numeric(gsub("%", "", merged_data$平板电脑上网比例))
# 打印计算结果
print(merged_data[, c("时间", "手机上网比例", "电视网民数", "台式电脑网民数", "笔记本电脑网民数", "平板电脑网民数")])

数据展示前十条,如图3所示:

图3合并后前十条数据

  1. 根据数据绘制各种接入方式比例的折线图,并比较说明每种接入方式的变化趋势与特征。

       各种接入方式变化的折线图如图4所示;

图4 接入方式折线图

     在整体趋势上,电视上网比例呈现下降趋势,从高达94.00%逐渐下降至约31.10%左右。从7-Dec到8-Dec有较大幅度的下降,之后逐渐下降至最低点,之后保持相对稳定。

     台式电脑上网比例呈现下降趋势,从26.70%逐渐下降至约29.80%左右。从7-Dec到8-Dec有轻微上升,之后逐渐下降至最低点,之后保持相对稳定。

     笔记本电脑上网比例呈现下降趋势,从26.70%逐渐下降至约28.30%左右。从7-Dec到8-Dec有较大幅度的上升,之后逐渐下降至最低点,之后保持相对稳定。

     平板电脑上网比例呈现下降趋势,从34.80%逐渐下降至约27.50%左右。从14-Dec到15-Dec有轻微的上升,之后逐渐下降至最低点,之后保持相对稳定。

     各种接入方式的变化趋势都呈现下降的特征,其中电视上网比例下降幅度最大,而台式电脑、笔记本电脑和平板电脑的下降趋势相对较缓。这可能反映了手机和移动设备的普及,以及人们更多地倾向于使用便携式设备进行上网。

    1. 读入数据集:“(3)2008-2022年网民结构.csv”
      与“(1)2002-2022年网民数量.csv”进行合并;
      代码:# 读取数据集
      data1 <- read.csv("(3)2008-2022年网民结构.csv", header = TRUE, stringsAsFactors = FALSE)
      data2 <- read.csv("(1)2002-2022年网民数量.csv", header = TRUE, stringsAsFactors = FALSE)# 合并数据集
      merged_data <- merge(data1, data2, by = "时间")# 修改列名
      colnames(merged_data)[colnames(merged_data) == "X10岁以下"] <- "10岁以下"
      colnames(merged_data)[colnames(merged_data) == "X10.19岁"] <- "10-19岁"
      colnames(merged_data)[colnames(merged_data) == "X20.29岁"] <- "20-29岁"
      colnames(merged_data)[colnames(merged_data) == "X30.39岁"] <- "30-39岁"
      colnames(merged_data)[colnames(merged_data) == "X40.49岁"] <- "40-49岁"
      colnames(merged_data)[colnames(merged_data) == "X50.59岁"] <- "50-59岁"
      colnames(merged_data)[colnames(merged_data) == "X60岁及以上"] <- "60岁及以上"
      colnames(merged_data)[colnames(merged_data) == "小学及以下"] <- "小学及以下"# 显示前10条数据
      head(merged_data, 10)# 将合并后的数据保存到CSV文件
      write.csv(merged_data, file = "合并后的数据.csv", row.names = FALSE)

运行结果如图5所示:

图5 合并后数据前10条

  1. 编写函数计算出城镇网民数量、农村网民数量、男性网民数量、女性网民数量、各年龄层网民数量、各学历网民数量(可以编写函数通过apply族函数进行批量处理,也可以直接编写循环函数直接一次性得到所有结果);

 

......

运行结果如图6所示:

图6 程序运行界面

  1. 进一步计算网民性别比(以女性网民为100,男性对女性的比例)、城乡比(以农村网民为100,城镇对农村的比例)、年龄比(以19岁以下网民为100,其他年龄层对19岁以下的比例)、学历比(以初中及以下网民为100,其他学历对初中及以下的比例);

       代码如下:

......

......

......

......

......

......

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/450246.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[office] excel表格怎么绘制股票的CCI指标- #媒体#学习方法#笔记

excel表格怎么绘制股票的CCI指标? excel表格怎么绘制股票的CCI指标&#xff1f;excel表格中想要绘制一个股票cci指标&#xff0c;该怎么绘制呢&#xff1f;下面我们就来看看详细的教程&#xff0c;需要的朋友可以参考下 CCI指标是一种在股票&#xff0c;贵金属&#xff0c;货…

基于Python的招聘网站爬虫及可视化的设计与实现

摘要&#xff1a;现在&#xff0c;随着互联网网络的飞速发展&#xff0c;人们获取信息的最重要来源也由报纸、电视转变为了互联网。互联网的广泛应用使网络的数据量呈指数增长&#xff0c;让人们得到了更新、更完整的海量信息的同时&#xff0c;也使得人们在提取自己最想要的信…

Python算法题集_旋转图像

Python算法题集_旋转图像 题目48&#xff1a;旋转图像1. 示例说明2. 题目解析- 题意分解- 优化思路- 测量工具 3. 代码展开1) 标准求解【矩阵复本】2) 改进版一【矩阵转置矩阵反转】3) 改进版二【四值旋转】 4. 最优算法 题目48&#xff1a;旋转图像 本文为Python算法题集之一…

Windows Server安装部署FTP服务

文章目录 建立FTP目录通过IIS在Server上安装FTP服务配置FTP站点配置身份验证和授权测试FTP服务FTP软件推荐FTP客户端软件FTP服务器软件适合Ubuntu的FTP软件 推荐阅读 在Windows操作系统中安装和配置FTP服务&#xff0c;主要是基于Internet Information Services (IIS)的FTP服务…

SQL sever2008中创建用户并赋权

一、创建数据库dream CREATE DATABASE dream; 二、创建登录用户XZS 法一&#xff1a;使用SSMS创建 通过查询 sys.syslogins 系统视图来确定当前登录是否具有系统管理员权限。执行以下查询语句&#xff1a; SELECT name, isntname FROM sys.syslogins WHERE sysadmin 1;选…

一款轻量级、高性能、功能强大的内网穿透代理服务器

简介 nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发&#xff0c;可支持任何tcp、udp上层协议&#xff08;访问内网网站、本地支付接口调试、ssh访问、远程桌面&#xff0c;内网dns解析等等……&#xff09;&#xff0c;此外还支持内网htt…

如何保证MySQL和Redis中的数据一致性?

文章目录 前言一、缓存案例1.1 缓存常见用法1.2 缓存不一致产生的原因 二、解决方案2.1 先删除缓存&#xff0c;再更新数据库2.2 先更新数据库&#xff0c;删除缓存2.3 只更新缓存&#xff0c;由缓存自己同步更新数据库2.4 只更新缓存&#xff0c;由缓存自己异步更新数据库2.5 …

Fink CDC数据同步(一)环境部署

1 背景介绍 Apache Flink 是一个框架和分布式处理引擎&#xff0c;用于在无边界和有边界数据流上进行有状态的计算。Flink 能在所有常见集群环境中运行&#xff0c;并能以内存速度和任意规模进行计算。 Flink CDC 是 Apache Flink 的一组源连接器&#xff0c;基于数据库日志的…

K8S部署Harbor(三部曲之三:使用)

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

Cmake编译Opencv3.3.1遇到有些文件无法下载的错误解决:

前言&#xff1a; 对于&#xff0c;opencv有些配置文件错误并未致命&#xff0c;所以&#xff0c;有错误也不影响后续的编译&#xff1a;但是&#xff0c;后引用如果要用&#xff0c;在回过头来还是要解决的。 问题表述&#xff1a; 比如&#xff0c;有些文件下载的错误&am…

[官方精简母盘WIM]_Windows10_22H2_19045.3930

[官方精简母盘WIM]_Windows10_22H2_19045.3930 【原汁原味】不过多阐述了哈&#xff0c;谁用谁知道&#x1f609; zh-cn_windows_10_business_editions_version_22h2_updated_jan_2024_x64_dvd_fef73a09 链接&#xff1a;https://pan.baidu.com/s/19Qj6cBHzaU8Rkn8WZ7-o2w?pw…

three.js 精灵模型Sprite作为标签

效果&#xff1a; <template><div><el-container><el-main><div class"box-card-left"><divid"threejs"style"border: 1px solid red; position: relative"></div></div></el-main></…