基于基站定位数据的商圈分析.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE \* MERGEFORMAT PAGE \* MERGEFORMAT 9 1 背景与挖掘目标 随着当今个人手机终端的普及、出行人群中手机拥有率和使用率已达到相当高的比例,根据手机信号在真实地理空间的覆盖情况,将手机用户时间序列的手机定位数据,映射至现实地理位置空间位置,即可完整、客观地还原出手机用户的现实活动轨迹,从而挖掘出人口空间分布与活动联系特征信息。 商圈是现代市场中企业市场活动的空间,同时也是商品和服务享用者的区域。商圈划分为目的之一是研究潜在顾客分布,以制定适宜的商业对策。 2 建模过程与求解 整个任务的完成主要包括以下步骤: 从移动通信运营商提供的特定接口上解析、处理、并滤除用户属性后得到用户定位数据。 以单个用户为例,进行数据探索分析,研究不同基站的停留时间,并进一步地进行预处理,包括数据规约和数据变换。 利用步骤2)形成的已完成数据预处理的建模数据,基于基站覆盖范围区域的人流特征进行商圈聚类,对各个商圈分群进行特征分析,选择合适的区域进行运营商的促销活动。 2.1 数据抽取 从移动通信运营商提供的特定接口上解析、处理、并滤除用户属性后得到位置数据,以2014-1-1为开始时间,2014-6-30为结束时间作为分析的观测窗口,抽取观测窗口内某区域的定位数据形成建模数据。 2.2 数据预处理 2.2.1 数据规约 原始数据的属性较多,但网络类型、LOC编号和信号类型这三个属性对于挖掘目标没有用处,故剔除这三个属性,而衡量用户的停留时间,并不需要精确到毫秒级,故可毫秒这一属性删除。 2.2.2 数据变换 由于各个属性之间的差异较大,为了消除数量级数据带来的影响,再进行聚类之前,需要进行离差标准化处理,离差标准化处理的python代码如下: #-*- coding: utf-8 -*- #数据标准化到[0,1] import pandas as pd #参数初始化 filename = ../data/business_circle.xls #原始数据文件 standardizedfile = ../tmp/standardized.xls #标准化后数据保存路径 data = pd.read_excel(filename, index_col = u基站编号) #读取数据 data = (data - data.min())/(data.max() - data.min()) #离差标准化 data = data.reset_index() data.to_excel(standardizedfile, index = False) #保存结果 2.3 模型构建 2.3.1构建商圈聚类模型 数据经过预处理之后,形成建模数据,采用层次聚类算法对建模数据进行基于基站数据的商圈数据,画出谱系聚类图,python代码如下: #-*- coding: utf-8 -*- #谱系聚类图 import pandas as pd #参数初始化 standardizedfile = ../data/standardized.xls #标准化后的数据文件 data = pd.read_excel(standardizedfile, index_col = u基站编号) #读取数据 import matplotlib.pyplot as plt from scipy.cluster.hierarchy import linkage,dendrogram #这里使用scipy的层次聚类函数 Z = linkage(data, method = ward, metric = euclidean) #谱系聚类图 P = dendrogram(Z, 0) #画谱系聚类图 plt.show() 可得到谱系聚类图: 从上图可看出,可以把聚类类别数取3类,python代码中去聚类类别数k=3,输出结果typeindex为每个样本对应的类别号,层次聚类算法见下: #-*- coding: utf-8 -*- #层次聚类算法 import pandas as pd #参数初始化 standardizedfile = ../data/standardized.xls #标准化后的数据文件 k = 3 #聚类数 data = pd.read_excel(standardizedfile, index_col = u基站编号) #读取数据 from sklearn.cluster import AgglomerativeClustering #导入sklearn的层次聚类函数 model = AgglomerativeClustering(n_clusters = k, linkage = ward) model.fit(data

文档评论(0)

annylsq + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档