注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Mister.Hu(巷里人家)

Go abroad!

 
 
 

日志

 
 
关于我

A campus photograph palyer,an enthusiastic reader,a solitary writer,a future traffic engineer.

网易考拉推荐

第一模块实现步骤  

2015-02-17 12:23:27|  分类: Junior |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

一、数据前期处理:

1、 将重庆基站数据和重庆手机数据导入到ACCESS中,

2、 获取用户表:在重庆手机数据表中进行一次生成表查询,对手机伪码进行GROUP  BY即可,再在用户表上加上用户ID字段(自动编号数据类型)和OD字段(若公司给了OD则到时候直接把OD放入查询即可)

SQL语言为:

SELECT 重庆手机数据.手机伪码 INTO 用户

FROM 重庆手机数据

GROUP BY 重庆手机数据.手机伪码;

生成表名为“用户”。

3、 获取基站表:在重庆基站表中创建简单查询,选择5个字段:序列(即基站ID)、LAC.CELL、基站经度、基站纬度,并生成表;

SQL语言为:

SELECT 重庆基站数据.基站ID, 重庆基站数据.LAC, 重庆基站数据.CELL, 重庆基站数据.基站经度重庆基站数据.基站纬度 INTO 基站FROM 重庆基站数据;

生成表名为“基站”。

4、   填充重庆手机数据中的基站序列(即基站ID)字段:根据LACCELL把重庆手机数据中基站序列填充(借助到已经生成的基站表),采用更新查询即可。

SQL语言为:

UPDATE 重庆手机数据基站 SET 重庆手机数据.基站序列 = [基站]![基站ID]

WHERE ((([基站]![LAC])=[重庆手机数据]![LAC]) AND (([基站]![CELL])=[重庆手机数据]![CELL]));

5、 获取使用表:先连接用户表和重庆手机数据表(根据手机伪码),然后生成表查询,选择使用表中的5个字段即可。

SELECT 重庆手机数据.序号 AS 使用ID, 用户.用户ID, 重庆手机数据.基站序列重庆手机数据.日期重庆手机数据.时间 INTO 使用

FROM 用户 INNER JOIN 重庆手机数据 ON 用户.手机伪码 = 重庆手机数据.手机伪码;

二、不进行路段匹配的两点全局OD分析:

OD进行group by,再对用户ID进行计数即可(都在汇总中执行)

城市

WH

XG

SZ

XY

SY

数字

1

2

3

4

5

SELECT 用户.OD AS OD类型, Count(用户.用户ID) AS OD

FROM 用户

GROUP BY 用户.OD;

三、交通密度计算:

基于单独路段的个体操作

1、初步筛选:

筛选OD12131415的且时间戳为9点到10点的用户手机信令数据:
首先连接用户表和使用表(基站表没有连接,直接在where条件中体现),查询条件如下:

SELECT 使用.使用ID, 使用.用户ID, 用户.OD, 使用.时间基站.基站经度基站.基站纬度

FROM 基站用户 INNER JOIN 使用 ON 用户.用户ID = 使用.用户ID

WHERE (((用户.OD)="12" Or (用户.OD)="13" Or (用户.OD)="14" Or (用户.OD)="15") AND ((使用.时间)>=90000 And (使用.时间)<=100000) AND (([基站]![基站ID])=[使用]![基站ID]));

2、匹配筛选:在密度初步筛选查询的基础上进行查询

由于用于密度分析和运行速度分析2个所需要的数据类型不一样(密度分析只需看哪些用户在高速上,而运行速度却需要每个用户的多条信令数据),所以分为2个查询:

1)       用于密度分析的匹配查询:

关键是对用户ID进行group  by以及对高速起终点经纬度进行筛选,至于那个计数则是对每个用户在这个时间段内这个路段上的信令数据条数统计,到时候分析运行速度时可以筛掉数据量小的数据;

SELECT [交通密度初步筛选(以 WH-XG为例)].用户ID, Count([交通密度初步筛选(以 WH-XG为例)].用户ID) AS 用户ID之计数

FROM [交通密度初步筛选(以 WH-XG为例)]

WHERE ((([交通密度初步筛选(以 WH-XG为例)].基站经度)>=106.4 And ([交通密度初步筛选(以 WH-XG为例)].基站经度)<=106.6))

GROUP BY [交通密度初步筛选(以 WH-XG为例)].用户ID, [交通密度初步筛选(以 WH-XG为例)].基站纬度;

106.4106.6为假设的WHXG两点的经度。

2)       用于运行速度的匹配查询:

此时就不必group by,主要是加上时间字段,再就是对经纬度进行筛选。

以“使用ID”为关系字段,从使用表和交通密度初步筛选查询中获取第二步需要的字段。

3、获取路段流量:

直接对用于密度分析的匹配查询所得的用户ID进行计数即可

SELECT Count(用于密度分析的匹配查询.用户ID) AS 用户ID之计数

FROM 用于密度分析的匹配查询;

循环计算和成果集成

通过字段筛选条件   OD分析可以一次性全部得出,但交通密度必须分时间和路段同时展示,且每个路段的筛选参数是不一样的,为此,必须考虑统一操作,需要针对筛选参数建立一些新表和查询,从而能把这些参数当做字段进行操作,分析如下:

初步筛选

OD条件不一样,时间段条件不一样

匹配筛选

路段起讫点经纬度不一样

为此需要创建3个表:

1、 时间段表(24个时间段)

在筛选表达式中写上时间起终点代替直接输入。

2、路段划分(单向OR双向?,先按单向来)

在筛选表达式中写上经纬度起终点代替直接输入

3、 OD筛选条件(单向OR双向?,先按单向来)

路段编号

筛选条件

12

"12" Or "13" Or "14" Or "15"

23

"23" Or "24" Or "25"

34

"34" Or "35"

45

"45"

21

"21"

32

"32" Or "31"

43

"43" Or "42" Or "41"

54

"54" Or "53" Or "52" Or "51

 

 by胡祥旺

  评论这张
 
阅读(20)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016