本实验任务是:
options(stringsAsFactors = FALSE)
library(Mreport) library(plyr) library(ggplot2) library(reshape2)
load_base() load_sample_base()
ls()
jd201805 <- read.csv("D:\\data\\sx_raw\\交调数据\\jd2018_05.csv") dim(jd201805)
当量计算
jd201805 <- caculate_equivalent(jd201805)
筛选属性
jd201805s <- select_atts(jd201805)
合并线路
jd201805all <- handle_mergeline(jd201805s,station_line)
合并样本库
jd <- handle_mergesample(jd201805all,sample_base) names(jd)
筛选出的交调站满足:
jd05new <- jd[jd$index %in% station_use,] #jd05new <- jd
x <- caculate_carsmean(jd05new,"citygroup");x
class(x)
caculate_carsmean(jd05new,"citygroup") %>% gg_boxplot(xangle = 15,xlab="城市群",ylab="月均日机动车当量加权平均")
caculate_passcarsmean(jd05new,"citygroup") %>% gg_boxplot(xangle = 15,xlab="城市群",ylab="月均日客车当量加权平均")
caculate_frecarsmean(jd05new,"citygroup") %>% gg_boxplot(xangle = 15,xlab="城市群",ylab="月均日货车当量加权平均")
至此前两次实验的内容回顾完毕,开始今天的实验。
names(station_useful)
roadlevel <- station_useful[,c(1,5)] names(roadlevel) <- c("index","level")
unique(roadlevel$level)
dim(jd05new)
jd201805new <- merge(jd05new,roadlevel,by="index",all.x = T) dim(jd201805new)
names(jd201805new)
合并完成
ddply(jd201805new,c("citygroup","level"),summarise, Wmean = weighted.mean(freight_cars,w=mileage)) %>% na.omit() %>% dcast(citygroup~level)
新定义了citygroup2样本库,将“长三角,海峡西岸”和“珠三角,海峡西岸”合并到“海峡西岸”
ddply(jd201805new,c("citygroup2","level"),summarise, Wmean = weighted.mean(freight_cars,w=mileage)) %>% na.omit() %>% dcast(citygroup2~level)
caculate_frecarsmean(jd201805new,"citygroup2")
ddply(jd201805new,c("threestrategy","level"),summarise, Wmean = weighted.mean(freight_cars,w=mileage)) %>% na.omit() %>% dcast(threestrategy~level)
ddply(jd201805new,c("roadhub","level"),summarise, Wmean = weighted.mean(freight_cars,w=mileage)) %>% na.omit() %>% dcast(roadhub~level)
caculate_level_carsmean(jd201805new,"citygroup2")
caculate_level_passcarsmean(jd201805new,"citygroup2")
珠三角普通省道值被极大值所干扰
caculate_level_frecarsmean(jd201805new,"citygroup2")
封装完成
环比是指2018年5月比2017年5月,由于暂时没有2017年5月数据,而且此处设计计算框架时也用不到,所以可以用非加权平均数模拟2017年5月数据,由此开发环比计算框架。
x201705 <- ddply(jd201805new,c("citygroup2","level"),summarise, Wmean = mean(cars)) %>% na.omit() %>% dcast(citygroup2~level) x201705
x201805 <- caculate_level_carsmean(jd201805new,"citygroup2") x201805
yearratio <- function(nowdf,thendf){ x <- nowdf for (i in 2:length(x)) { x[[i]] <- nowdf[[i]]/thendf[[i]] } return(x) }
yearratio(x201805,x201705)
caculate_yearratio(x201805,x201705)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.