基于R语言的数据分析报告

基于R语言的数据分析报告

(很多同学私信反馈通过kaggle没办法下载数据集,我把数据集上传到百度云供大家取用,链接:https://pan.baidu.com/s/1S48WWmtK-BcgF3jkwMfivw 密码:3pd6,求点赞求关注!)

一、数据说明

本文进行数据分析所使用的数据是共享单车运营数据,记录了共享单车租赁的时间、地点、环境(包括季节,温度,湿度)等数据。该数据集来自 kaggle 上的开源项目:https://www.kaggle.com/c/bike-sharing-demand/data。

通过分析这份数据,我们能观察到共享单车被使用的一般规律,用户的使用习惯,环境对共享单车运营带来的影响等有用信息,能够更好地帮助共享单车运营方的管理和研究城市的流动性。

二、数据分析

1. 读取数据

首先指定 wd 的路径,将数据集 train.csv 的数据读取到 R 语言中,使用变量 data 存储;在 train.csv 中,数据格式如下,每一条记录包括了时间、季节、是否是周末、是否是工作日、天气、温度、最高温度、湿度、风速、损坏车辆、登记使用车辆、总租赁车辆数等信息:

基于R语言的数据分析报告_第1张图片
在本数据分析报告中,我们关注温度、湿度、风速、总租赁车辆数这四项数据,数据的读取如下:

library(showtext)
showtext_auto()

# 配置环境,读取数据
setwd("/Users/caitan/Desktop/方法论/rDataAnalysis")
data <- read.csv("train.csv", header = FALSE)

# 从data中读取温度、湿度、风速、损坏使用数据、登记使用数据,租赁总数据
temperature <- as.numeric(data[,6])
humidity <- as.numeric(data[,8])
windspeed <- as.numeric(data[,9])
casual <- as.numeric(data[,10])
register <- as.numeric(data[,11])
total <- as.numeric(data[,12])

2. 温度、湿度、风速的均值、标准差

源代码如下:

# 温度的均值和标准差
print(mean(temperature, na.rm = T))
print(sd(temperature, na.rm = T))

# 湿度的均值和标准差
print(mean(humidity, na.rm = T))
print(sd(humidity, na.rm = T))

# 风速的均值和标准差
print(mean(windspeed, na.rm = T))
print(sd(windspeed, na.rm = T))

结果如下:

基于R语言的数据分析报告_第2张图片

3. 温度与租赁量关系的散点图

源代码:

plot(x = temperature, y = total, xlab = "温度", ylab = "租赁量", main = "温度与租赁量关系图", cex = 1, pch = 1)

基于R语言的数据分析报告_第3张图片

4. 正态分布的一致性检验

在本文中,我们选取温度这一项数据进行正态分布一致性检验,源代码如下:

shapiro.test(temperature[0:5000])

结果如下:
基于R语言的数据分析报告_第4张图片
虽然 W 值接近于1,但是 p 值小于 0.05,不符合正态分布的一致性检验,说明温度这一项数据不符合正态分布

5. 车辆使用数据

根据字段 holiday 和 workingday,我们可以将车辆使用数据分为工作日和休息日,进行对比分析。在一天24个时段中,工作日和节假日的租赁数量分别为:

hours = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,22, 23, 24)

count_workday = c(36.73225806451613, 16.003236245954692, 8.436065573770492, 4.892733564013841, 5.363636363636363, 24.529032258064515, 102.57741935483871, 290.69032258064516, 479.9451612903226, 242.29354838709676, 133.59677419354838, 157.0193548387097, 199.34726688102893, 197.16077170418006, 180.36655948553056, 198.62700964630224, 292.4662379421222, 529.2090032154341, 495.4855305466238, 349.2829581993569, 249.36334405144694, 184.85530546623795, 138.34405144694534, 88.9967845659164)
count_weekday = c(94.48965517241379, 71.9103448275862, 53.74825174825175, 25.53472222222222, 8.544827586206896, 9.373239436619718, 19.99310344827586, 47.26896551724138, 112.2551724137931, 177.9241379310345, 263.80689655172415, 325.3862068965517, 379.11034482758623, 387.82068965517243, 378.7310344827586, 373.70344827586206, 367.64827586206894, 339.1241379310345, 292.24827586206897, 242.3448275862069, 183.80689655172415, 148.73793103448276, 123.35172413793103, 90.60689655172413)

绘制图形的代码如下:

# 绘制租赁量和时刻的柱形图
barplot(height = count_workday, xlab = "时刻", ylab = "租赁量", main = "工作日使用情况", names.arg = hours)
barplot(height = count_weekday, xlab = "时刻", ylab = "租赁量", main = "休息日使用情况", names.arg = hours)

# 绘制租赁量和时刻的散点图
pie(x = count_workday, labels = hours, main = "工作日使用情况", radius = 1)
pie(x = count_weekday, labels = hours, main = "休息日使用情况", radius = 1)

绘制柱形图:

基于R语言的数据分析报告_第5张图片
基于R语言的数据分析报告_第6张图片

绘制饼状图:

基于R语言的数据分析报告_第7张图片
基于R语言的数据分析报告_第8张图片

三、总结

  1. 由温度-租赁量散点图可知,当温度在15-25之间时,共享单车租赁量较高;当温度在15度以下时,温度越低,租赁量越低;当温度较高时,仍能保持一定的租赁量;
  2. 由工作日-时刻租赁柱状图/饼状图可知,工作日的共享单车使用高峰期集中在上午7-10点和下午18-20点,与上下班交通高峰期正好重合;
  3. 由休息日-时刻租赁柱状图/饼状图可知,休息日的共享单车使用集中在11-19点;

通过对共享单车运营数据的分析,我掌握了R语言的使用以及数据图的绘制过程,未来可以尝试使用这份数据进行预测性的工作。

你可能感兴趣的:(深度学习,数据分析,r语言,数据挖掘)