版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
×××学院×××第十五章Python在市场分析与调查中的应用单击此处添加文本具体内容01Python概述02爬取市场数据单击此处添加文本具体内容03进行市场数据分析单击此处添加文本具体内容04进行文本分析单击此处添加文本具体内容目录Python概述单击此处添加文本具体内容/01一、Python简介Python是一种跨平台的通用编程语言。作为一种开放源代码,每个人都可以为其代码和库的编写和维护做出贡献。Python远离0和1,更接近人类语言。因此,任何使用该语言的个人都无需担心内存管理、删除对象或其他问题,只需完全专注于解决编程问题。当前Python被广泛应用于Web开发、机器学习、游戏开发、数据科学、网络爬虫等领域,市场分析也是Python应用的一个重要领域。二、Python在市场分析中的应用(一)Python应用于市场数据的抓取网络爬虫是大数据行业获取市场数据的核心工具,Python是编写网络爬虫最主流的编程语言,Scripy爬虫框架应用非常广泛。Python可以爬取的市场信息非常广泛,如从各大网站爬取商品折扣信息,比较获取最优选择;对社交网络上发言进行收集分类,生成情绪地图,分析购物习惯;爬取网易云音乐某一类歌曲的所有评论,生成词云;按条件筛选获得豆瓣的电影书籍信息并生成表格等等。二、Python在市场分析中的应用(二)Python应用于市场数据的分析利用Python的各种工具,可轻松获得庞大的市场数据集并进行分析,从而得到关于市场趋势、消费偏好、品牌态度等领域的重要见解。Python的库(例如NumPy和Pandas)广泛用于数据集的收集、处理和清理,并通过应用数学算法分析得到有关市场的有用结论,辅助企业决策或使客户受益。同时,Python附带的强大可视化工具(如Matplotlib和Seaborn),让其成为数据分析者的绝佳帮手。三、Python的优缺点(一)Python的优点(1)简单易懂:关键字少、结构简单、语法清晰,能够非常快速地编写。(2)丰富的代码库:有300多个标准库模块,也有许多用于Python的支持库。(3)可交互和扩展:支持交互模式,也支持将Python代码放入其他语言的源代码中。(二)Python的缺点(1)运行速度慢:Python代码执行非常耗时,但大部分情况下这种速度上的差异很难感觉得出来。(2)移动技术薄弱:在移动计算上是一种较弱的语言。(3)代码不能加密:使用Python编译的程序要想发布,就必须把源码发布出去。爬取市场数据单击此处添加文本具体内容/02一、大数据的获取来源利用大数据进行市场分析是当前市场调查与分析的新进展。当前获取大数据有两个来源:内部大数据和外部大数据。内部大数据的获取:组织内部的数据库或数据统计平台中根据分析的需要获取数据。一般只需导出或提取需要的数据即可。外部大数据的获取:根据需要到特定的网站去下载并即可获取外部公开的数据集;或者利用网络爬虫从网络中爬取所需数据。二、利用Python爬取市场数据的步骤特别注意:一般网站都有自己的robots.txt协议,利用Python爬取网页必须遵循该协议;网络爬虫不能干扰网站的正常运行,特别是涉及个人隐私数据的情况下。根据我国的《网络安全法》及相关的刑事司法解释,超过限定的网络爬虫,网站是保留了起诉权利的。当然,公开数据大部分是可以采集的,在尊重对方网站的反爬及数据政策的前提下,谨慎、合理地利用Python爬取网页是可以的。二、利用Python爬取市场数据的步骤(一)准备工作(1)安装Python程序及其开发环境。当前多用集成开发环境,比较常见的是选用JupyterNotebook作为集成开发环境,当然也可以安装其他合适的集成开发环境。安装Python3.6、JupyterNotebook。启动JupyterNotebook。二、利用Python爬取市场数据的步骤(一)准备工作(2)查看HTML页面结构并熟悉将要抓取的内容。在HTML页面打开网页检查器,能够看到该页面的结构分布,以及页面的每个字段包含在其中的元素。熟悉哪些元素是进行页面抓取时所需要的。二、利用Python爬取市场数据的步骤(二)发起请求,获取响应(1)先安装需要的库,再导入相应模块。在Python3中,统一用urllib库来实现请求的发送。urllib是Python内置的HTTP请求库,它包含request、error、parse、robotparser4个模块,根据需求进行调用。BeautifulSoup是Python用来解析爬取的网页源代码的一个库。调用beautifulsoup库时,需要先安装bs4模块,并采用“frombs4importBeautifulSoup”进行导入。csv是用来存储数据的一种纯文本文件,通常都是用于存放电子表格或数据的一种文件格式。直接进行导入“importcsv”。二、利用Python爬取市场数据的步骤(二)发起请求,获取响应(2)向所需抓取的网页发送网页请求。确定需要爬取的网页URL地址,通过HTTP协议获取对应的HTML页面。值得注意的是,不少网站需要登陆认证才能请求网页数据,因此需要设置请求头,防止被网站屏蔽。发送网络请求,获取所有的页面链接。二、利用Python爬取市场数据的步骤(三)解析内容有了页面的链接,就可以使用相应的库对HTML页面进行解析,找到HTML页面中的相应元素。一般同时关注属性及属性值。这里采用正则匹配获取所有链接页面中的相应属性和属性值。由于抓取的往往不止一个网页,这时就需要运用循环通过soup对象找到所想要抓取的众多网页。(四)保存数据上一步得到的爬取数据,已经暂时放在了列表和字典中,这一步需要将这些爬取数据保存到本地。进行市场数据分析单击此处添加文本具体内容/03一、使用NumPy和SciPy进行数据分析NumPy是Python的一种开源的数值计算扩展,可用来存储和处理大型矩阵。NumPy提供了许多高级的数值编程工具,如矩阵数据类型、矢量处理,以及精密的运算库。Numpy中用ndarray类型来描述一组数据,使得批量操作数组元素时速度更快。SciPy是一个开源的Python算法库和数学工具包,它是基于Numpy的科学计算库,常用于数学、科学、工程学等领域,可以处理最优化、线性代数、积分、插值、拟合、特殊函数、快速傅里叶变换、信号处理、图像处理、常微分方程求解器等。NumPy和SciPy的协同工作可以高效解决很多问题,在市场分析中也常常用两者的组合来处理相关问题。一、使用NumPy和SciPy进行数据分析(一)使用NumPy创造数据(1)创造一组数据用List如何创造一组数据,data=[1,2,3]用ndarray创造一组数据,data=array([1,2,3])(2)创造服从特定分布的一组数据创造一组服从均值为0、标准差为10正态分布的数据,data=normal(0,10,size=10)创造一组最小值为0、最大值为10均匀分布的数据,data=random(0,10,size=10)一、使用NumPy和SciPy进行数据分析(二)使用NumPy进行定量数据分析(1)计算中心位置计算均值:mean(data)计算中位数:median(data)(2)计算发散程度极差:ptp(data)方差:var(data)标准差:std(data)变异系数:mean(data)/std(data)一、使用NumPy和SciPy进行数据分析(二)使用NumPy进行定量数据分析(3)计算偏离程度计算第一个值的z-分数:(data[0]-mean(data))/std(data)得到的是数据集data的处于0号位置数值(即data数据集中第一个值)的z-分数。(4)计算相关程度随机生成两组数据:x=normal(0,10,size=100),y=randint(0,10,size=100)创造成矩阵:data=array([x,y])计算两组数的协方差:cov(data,bias=1)计算两组数的相关系数:corrcoef(data)一、使用NumPy和SciPy进行数据分析(三)使用SciPy进行定性数据分析计算众数:mode(data)二、使用Matplotlib进行图分析的过程matplotlib是python的绘图库,可以很方便的绘制高质量的图形。使用图分析可以更加直观地展示数据的分布(频数分析)和关系(关系分析)。柱状图和饼形图是对类别数据进行频数分析的常用工具,使用前需将每一类的频数计算出来。直方图和累积曲线是对定量数据进行频数分析的常用工具,直方图对应密度函数而累积曲线对应分布函数。散点图可用来对两组数据的关系进行描述。在没有分析目标时,需要对数据进行探索性的分析,箱形图可以完成这一任务。二、使用Matplotlib进行图分析的过程(一)类别的频数分析(1)柱状图使用Matplotlib绘制柱状图:frommatplotlibimportpyplotyear=["20{}".format(i)foriinrange(17,22)]sales=[165,191,221,288,272]plt.rcParams["font.sans-serif"]=['SimHei']plt.rcParams["axes.unicode_minus"]=Falseplt.bar(year,sales,color='y)plt.title("salesanalysis")plt.xlabel("year")plt.ylabel("sales")plt.show()二、使用Matplotlib进行图分析的过程(一)类别的频数分析(2)饼状图使用Matplotlib绘制饼形图:frommatplotlibimportpyplotyear=["20{}".format(i)foriinrange(17,22)]sales=[165,191,221,288,272]plt.style.use('fivethirtyeight')plt.title('salesanalysis',fontsize=18)plt.pie(sales,labels=year,autopct='%1.1f%%',counterclock=False,startangle=90,shadow=False)plt.legend()plt.show()二、使用Matplotlib进行图分析的过程(二)定量数据的频数分析(1)直方图使用Matplotlib绘制直方图:fromnumpy.randomimportnormalfrommatplotlibimportpyplot#随机生成某产品100个地市的销量数据sales=normal(172,30,1000)#绘制直方图plt.style.use('fivethirtyeight')pyplot.hist(sales,bins=100,color='y')pyplot.xlabel('sales')pyplot.ylabel('frequency')pyplot.title('salesofcity')pyplot.show()二、使用Matplotlib进行图分析的过程(二)定量数据的频数分析(2)累积曲线使用Matplotlib绘制累积曲线:fromnumpy.randomimportnormalfrommatplotlibimportpyplot#随机生成某产品100个地市的销量数据sales=normal(172,30,1000)#绘制累积曲线pyplot.hist(sales,20,histtype='step',cumulative=True,color='y')pyplot.xlabel('sales')pyplot.ylabel('frequency')pyplot.title('salesofcity')pyplot.show()二、使用Matplotlib进行图分析的过程(三)定量数据的关系分析使用Matplotlib绘制散点图:frommatplotlibimportpyplotexpense=[76,77,68,65,69,66,68,72,70,71]sales=[179,180,168,166,173,168,169,180,178,178]#绘制散点图pyplot.scatter(expense,sales)pyplot.xlabel('expense')pyplot.ylabel('sales')pyplot.title('marketingexpense&sales')pyplot.show()二、使用Matplotlib进行图分析的过程(四)定量数据的探索分析使用Matplotlib绘制箱形图:fromnumpy.randomimportnormalfrommatplotlibimportpyplot#随机生成某产品100个地市的销量数据sales=normal(172,30,1000)#绘制箱形图pyplot.boxplot([sales],labels=['sales'])pyplot.title('salesofcity')pyplot.show()进行文本分析单击此处添加文本具体内容/04一、文本的作用(一)可以反映文本生产者的信息:可以反映个人信息、企业文化、品牌个性等信息;对多个文本内容进行合并形成更大层面的研究;企业和组织还可以使用社交网络倾听民声,了解消费者偏好等信息。(二)可以影响消费者:文本会影响消费者的行为和选择。文本的反映作用(反映生产者的信息)和影响作用(影响消费者的行为和选择)往往会同时起作用。(三)可用于预测与理解:使用文本特征进行机器学习和预测。二、文本分析基础(一)数据预处理借助Python将文本数据预先进行清洗处理。(1)数据获取:可使用python设计网络爬虫采集数据。(2)分词:也称切词,获取的数据需要从章节段落拆解成颗粒度更小的词语,方便进行分析。中文分词多采用分词词典来进行。(3)清洗:网络爬虫在采集数据时清除掉像HTML标签、图片、链接等字符。(4)剔除停止词:剔除文本中有很多经常出现的无意义或者意义微乎其微的词,如“的”“地”“是”等。二、文本分析基础(二)文本信息提取提取文本信息形成研究数据有两种分析方法:第一种方法是实体抽取,如从文本中计算词语词频、词组数,根据文本数据存在的不同话题构建出话题模型(topicmodel);第二种方法是关系抽取,即(1)实体抽取(entityextract):大多数情况下实体抽取需要适用专业词典或词表,如涉及概念、品牌、分类、地址等专业性较强的词语。Python中用到较多的是情感词典,常使用词袋法(BagofWords)计算文本中的情感。话题模型最常见的是LDA(隐含狄利克雷分布),这是一种典型的词袋模型。(2)关系抽取(relationextraction):通过词语之间关系进行文本信息的抽取,可用实体共现性来捕捉。当前通用的方法是机器学习,即通过人工标注相关的数据,训练机器学习模型。二、文本分析基础(三)文本分析指标(1)计数测量指标使用相应的词典统计实体出现的次数,可以对不同实体进行比较。局限是受文本长度的干扰、某些实体会比其他实体出现更多。(2)相似度指标可用cos余弦相似、jaccard相似等计算方法来分析文本之间的相似度。三、文本分析过程文本分析的种类很多,如针对舆情、在线评论等文本信息进行的关键词提取、文本摘要、文本聚类、文本分类、文本主题模型、观点抽取、情感分析等。以对用户商品评论进行的舆情分析为例,可通过对各个产品评论内容的语句分词、词频统计及绘制词云图等方式进行文本的分析。三、文本分析过程(一)数据准备首先读取产品评论数据表,获取其评论字段数据。#安装库pipinstallpd#导入需要用的模块importpandasaspd#读取产品评论数据getdata=pd.read_excel(r'/Users/mayolg/Desktop/京东手机壳评价数据.xlsx',usecols=[2])print(getdata)三、文本分析过程(二)词频统计首先导入需要用到的模块。再读取评价数据,并进行jieba分词处理。再根据分词结果统计词频。得到各词的频数统计。#安装库pipinstalljieba#导入需要用的模块importjiebaimportjieba.analysetext=open("/Users/mayolg/Desktop/京东手机壳评价数据.txt",encoding="utf-8").read()words=jieba.lcut(text)counts={}forwordinwords:iflen(word)==1:continueelse:counts[word]=counts.get(word,0)+1print(counts)三、文本分析过程(三)绘制词云图同样的,先导入库和模块。再读取评价数据,进行jieba分词处理,并形成词云图。#安装词云库pipinstalljiebapipinstallwordcloud#导入模块fromwordcouldimportWordCloudimportmatplotlib.pyplotaspltimportjiebatext=open("/Users/mayolg/Desktop/京东手机壳评价数据.txt",encoding="utf-8").read()words=jieba.lcut(text)split="".join(words)stop_words=['的','了','还','就','很']ciyun_words=""forwordinresult:ifwordnotinstop_words:ciyun_words+=wordmywordcloud=WordCloud(background_colo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 含药物的漱口剂产品供应链分析
- 装有测量传感器的健身圈项目营销计划书
- 云计算行业营销策略方案
- 磁带消磁装置项目运营指导方案
- 花园水管用洒水枪商业机会挖掘与战略布局策略研究报告
- 冷媒秤产业链招商引资的调研报告
- 绘图用丁字尺项目营销计划书
- 冷藏展示柜产业链招商引资的调研报告
- 医用南美牛奶菜的干皮产品供应链分析
- 传真通信行业经营分析报告
- 江苏省南通市市区2023-2024学年五年级上学期期中数学试卷
- 期中测试卷-2024-2025学年统编版语文一年级上册
- 人教版一年级数学上册《第一、二单元测试卷》(附答案)
- 人教版二年级上册数学计算题400道
- 供应室教学课件
- 第三单元 测量(单元测试)-2024-2025学年三年级上册数学人教版
- 2024年济南轨道交通集团限公司招考(75名)易考易错模拟试题(共500题)试卷后附参考答案
- 计算机应用基础
- 华为年财务报表分析(共16张课件)
- 人教版(2024)七年级上册数学第4章 整式的加减运算 达标测试卷(含答案)
- 五年级上册数学课件-5.2.1方程的意义(人教版)(共34张PPT)
评论
0/150
提交评论