版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据分析及可视化第0章-课前准备.pptx第1章-数据分析及可视化概述.pptx 第2章-Python数据分析平台.pptx 第3章-数据的基本可视化方法.pptx 第4章-数据挖掘基础及可视化.pptx 第5章-数据基本分析及可视化.pptx
数据分析及可视化
数据分析及可视化
—Excel+Python(微课版)
课程安排王斌会
1、在基本统计学原理学习的基础上,深入学习和掌握
【数据分析及可视化】
2、该门课程每周4课时,理论与上机结合。期末考核:
总成绩=平时(20%)+上机(20%)+期末考试(60%)考试方式
平时(20):课堂(40%)+出勤(60%)上机(20):两次作业,一次50%
期末考试:闭卷数据分析及可视化教学大纲第1章数据分析及可视化概述
1.1数据分析概述
1.2数据的收集与管理
练习题1第2章Python数据分析平台
2.1Python数据处理基础
2.2Python数据处理方法
练习题2第3章数据的基本可视化方法
3.1基于列表的可视化
3.2基于数据框的可视化
练习题3第4章数据挖掘基础及可视化
4.1数据的透视分析
4.2探索数据分析
练习题4第5章数据基本分析及可视化
5.1描述性数据分析
5.2数据的聚类分析
练习题5第6章数据综合评价及可视化
6.1综合评价方法及应用
6.2综合指数的预警监测
练习题6第7章数据统计推断及可视化
7.1随机抽样及其分布图
7.2参数的统计推断
练习题7第8章数据模型分析及可视化
8.1相关分析及可视化
8.2线性回归模型及可视化
8.3一般线性模型及可视化
练习题8第9章文本及在线数据的挖掘
9.1文本数据挖掘与可视化
9.2在线数据的获取与分析
练习题9数据分析及可视化教材目录王斌会数据分析及可视化教材大纲王斌会数据分析及可视化学习网站王斌会http://R数据分析及可视化/Rstat第1章数据分析及可视化概述1.1数据分析概述第1章数据分析及可视化概述1.1.1传统的数据分析1.数据分析基础1.1数据分析概述第1章数据分析及可视化概述1.1.1传统的数据分析2.数据分析基本步骤1.1数据分析概述第1章数据分析及可视化概述1.1.2大数据分析基础1.大数据的含义PB是大数据的临界点KB->MB->GB->TB->PB->EB->ZB->YB->NB->DB1s是大数据的临界点微信、微博、物联网结构化、非结构化数据数据挖掘统计分析1.1数据分析概述第1章数据分析及可视化概述1.1.2大数据分析基础2.大数据分析方法1.1数据分析概述第1章数据分析及可视化概述1.1.2大数据分析基础2.大数据分析方法1.1数据分析概述第1章数据分析及可视化概述1.1.3数据分析可视化工具1.常用数据分析工具简介1.1数据分析概述第1章数据分析及可视化概述1.1.3数据分析可视化工具2.数据分析及可视化工具选择(1)可视化图表分析工具①
Echart②
Highcharts③
AntV1.1数据分析概述第1章数据分析及可视化概述1.1.3数据分析可视化工具2.数据分析及可视化工具选择(2)商业智能分析工具①Tableau
②FineBI
③PowerBI1.1数据分析概述第1章数据分析及可视化概述1.1.3数据分析可视化工具2.数据分析及可视化工具选择(3)编程分析语言
如果仅仅是做一般数据分析和可视化,数据量不是特别大,而且要求系统免费、开源、跨平台,那么首选的数据分析和可视化组合应该是WPS+Python。
如果你的数据量不大,使用Window平台的话,也可考虑用Excel+Python进行数据分析和可视化,但Excel收费。1.2数据的收集与管理第1章数据分析及可视化概述1.2.1数据集的构成1.数据分析指标的性质(1)定性指标(也称计数数据):度量事物进行分类的结果,只能归入某一类而不能用数值进行测度的数据称为定性数据。数据表现为类别,常用文字来表述,如地区、年份、性别、区域、产品分类等。地区:广州,深圳,珠海,佛山,惠州,东莞,中山,江门,肇庆年份:2000,2001,2002,2003,2004,2005,......,2015,2016,20171.2数据的收集与管理第1章数据分析及可视化概述1.2.1数据集的构成1.数据分析指标的性质(2)定量指标(也称计量数据):度量事物的精确测度。结果表现为具体的数值,如国内生产总值(GDP)、从业人员、人均国内生产总值(人均GDP)、身高、体重、家庭收入、成绩等人均GDP:2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74,21.32,12.92消费总额:0.88,30.61,30.62,34.62,45.04,41.58,62.1,61.37,47.36,54.93,95.381.2数据的收集与管理第1章数据分析及可视化概述1.2.1数据集的构成1.数据分析指标的性质2.分析指标体系的构建
指标体系通常由一个或多个指标组成。构建多变量指标体系应遵循以下几项原则:(1)系统全面性原则(2)稳定可比性原则(3)简明科学性原则(4)灵活可操作性原则1.2数据的收集与管理第1章数据分析及可视化概述3.指标体系的组成(1)指标体系的构建1.2数据的收集与管理第1章数据分析及可视化概述3.指标体系的组成(2)指标体系的组成形式1.2数据的收集与管理第1章数据分析及可视化概述1.2.2数据的收集与保存1.数据的收集范围
本课程的数据收集范围是广东省21个地区(广州,深圳,珠海,佛山,惠州,东莞,中山,江门,肇庆……),时间跨度为2000~2019年,共20年。由于数据具有一定的时滞性,故选择2000年作为研究的起点。本文的数据主要从历年的《广东省统计年鉴》和广东省各地区统计网站等获取。1.2数据的收集与管理第1章数据分析及可视化概述1.2.2数据的收集与保存2.数据的构成形式1.2数据的收集与管理第1章数据分析及可视化概述3.数据的存储方式第1章数据分析及可视化概述第2章Python数据分析平台2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境1.Python基础编程环境
2.Anaconda计算发行包
3.Jupyter项目及其应用2.1.2Python的编程基础1.Python的工作目录2.Python基本数据类型3.Python扩展数据类型2.1.3Python的函数定义1.函数的定义与调用
2.函数的参数与返回值2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境1.Python基础编程环境Python是一个强大的面向对象编程语言,这样的编程环境需要使用者不仅熟悉各种命令的操作,还须熟悉命令行编程环境,而且所有命令执行完即进入新的界面,这给那些不具备编程经验或对统计方法掌握不是很好的使用者造成了极大的困难。2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境1.Python基础编程环境/2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境2.Anaconda计算发行包(1)Anaconda的下载与安装Anaconda是Python和R的开源发行版本。它能够用于数据科学,机器学习,深度学习等领域。Anaconda能够帮助简化软件包的管理和部署,它还匹配了多种工具,可以使用各种机器学习和人工智能算法轻松地从不同的来源收集数据。Anaconda还可以使用户获得一个易于管理的环境设置——用户只需点击按钮就可以部署任何项目。2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境2.Anaconda计算发行包/products/individual2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境2.Anaconda计算发行包(2)Anaconda菜单与启动装好Anaconda系统后,会在Windows系统菜单中出现下面的菜单,里面包含了一些常用的数据分析平台,如用于系统导航的AnacondaNavigator、执行和安装Anaconda包的命令行菜单AnacondaPrompt、进行数据分析教学的JupyterNotebook、用于数据分析编程的Spyder设置与研发平台。2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境2.Anaconda计算发行包2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境3.Jupyter项目及其应用(1)Jupyter的启动点击Anaconda菜单JupyterNotebook或在AnacondaPrompt命令行输入>jupyternotebook2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境3.Jupyter项目及其应用(1)Jupyter的启动下面命令可直接在D:\DAV目录中打开jupyternotebook>jupyternotebook--notebook-dir=D:\DAV也可以在命令行上用>d:>cdd:\DAV>d:\dav>jupyternotebook2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境3.Jupyter项目及其应用(2)Jupyter的快捷键编辑模式,允许往单元中输入代码或文本;这时的单元框线是绿色的。命令模式,通过键盘输入运行程序命令;这时的单元框线是灰色的。2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境3.Jupyter项目及其应用(2)Jupyter的快捷键Shift+Enter:运行本单元,选中下一个单元;Ctrl+Enter:运行本单元;Alt+Enter:运行本单元,在其下插入新单元;2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境3.Jupyter项目及其应用(2)Jupyter的快捷键Y:单元转入代码状态;M:单元转入markdown状态;A:在上方插入新单元;B:在下方插入新单元;X:剪切选中的单元;Shift+V:在上方粘贴单元。2.1Python数据处理基础第2章Python数据分析平台2.1.1Python的编程环境3.Jupyter项目及其应用(3)Jupyter的魔术关键字魔术关键字(magickeywords),正如其名,是用于控制Notebook的特殊命令。它们运行在代码单元中,以%或%%开头,前者控制一行,后者控制整个单元。比如,要得到代码运行的时间,则可以使用%timeit;如要获得当前目录,可用%pwd,需要改变当前目录,可用%cd"D:\\DAV",具体操作见下节。2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础1.Python的工作目录在使用Python时一个重要设置是定义工作目录,即设置当前运行路径(这样全部数据和程序都可在该目录下工作)。例如,可以将自己的Python工作目录设定为D:\DAV(先在D盘上建立目录DAV,然后在该目录下编程和进行数据分析)。2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础1.Python的工作目录(1)获得当前目录In%pwdOut'C:\\Users\\Lenovo'2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础1.Python的工作目录(2)改变工作目录In%cd"D:\\DAV"Out"D:\DAV"2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础2.Python基本数据类型在内存中存储的数据可以有多种类型。例如,一个人的年龄可以用数字来存储,名字可以用字符来存储。Python定义了一些基本数据类型,用于存储各种类型的数据。Python的基本数据类型包括数值型、逻辑型、字符型、复数型等,也可能是列表、元组和字典等类型。2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础2.Python基本数据类型(1)数值型数值型数据的形式是实型,可以写成整数(如n=3)、小数(如x=1.46)、科学记数(y=1e9)的方式,该类型数据默认是双精度数据。2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础2.Python基本数据类型(1)数值型Python支持多种数值类型,常见的有:int(整数型)、float(实数型)、complex(复数型)等。但有别于其他编程语言,这些数值在使用前不需要定义它们的类型,直接输入使用,系统会自动识别其类型。2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础2.Python基本数据类型(1)数值型在Python中用#表示注释,即其后的语句或命令将不执行。Inn=10#整数n#相当于print(n)Out102.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础2.Python基本数据类型(1)数值型Inx=10.2345#实数x#无格式输出Out10.2345Inx=10.2345print(“x=%6.3f”%x)#有格式输出Outx=10.2340Inround(x,1)#保留一位小数Out10.22.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础2.Python基本数据类型(2)逻辑型逻辑型数据只能取True或False值。可以通过比较获得逻辑型数据。InA=True;AOutTrueIn10<9OutFalse2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础2.Python基本数据类型(3)字符型字符型数据的形式是夹在双引号“”或单引号‘’之间的字符串,如‘MR’。注意:一定要用英文引号,不能用中文引号“”或‘’。Python语言中的字符类型(str)是由数字、字母、下画线组成的一串字符。一般形式为:‘IlovePython’或"IlovePython“2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础2.Python基本数据类型(3)字符型它是编程语言中表示文本的数据类型。Ins=“Python";sOut'Python'InS='WelovePythondataanalysis';SOut'WelovePythondataanalysis'2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础2.Python基本数据类型(3)字符型Python的所有数据类型都是类,可以通过type()函数查看该变量的数据类型。用astype()可进行数据类型转换。用astype()可进行数据类型转换。Intype(n)OutintIntype(x)Outfloat2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础3.Python扩展数据类型Python有几个扩展的自定义数据类型,这些数据类型是由上述基本类型构成的。2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础3.Python扩展数据类型(1)列表(list)列表(list)是Python中最有用的数据类型之一。列表可以完成大多数集合类的数据结构实现。它支持字符、数字、字符串,甚至可以包含列表(即嵌套)。列表用[]标识,是一种最通用的复合数据类型。列表List是我们进行数据分析的基本类型,所以必须掌握。2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础3.Python扩展数据类型In珠三角=['广州','深圳','珠海','佛山','惠州','东莞','中山','江门','肇庆'];珠三角Out['广州','深圳','珠海','佛山','惠州','东莞','中山','江门','肇庆']InCGDP=[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74];CGDP#人均GDPOut[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74](1)列表(list)2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础3.Python扩展数据类型(1)列表(list)Python的列表具有切片功能,列表中值的切割也可以用到变量[头下标:尾下标],就可以截取相应的列表,从左到右索引默认0开始,从右到左索引默认1开始,下标可以为空,表示取到头或尾。加号+是列表连接运算符。2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础3.Python扩展数据类型In珠三角[0]#输出列表的第一个元素Out'广州'In珠三角[1:3]#输出第二个至第三个元素Out['深圳','珠海']In珠三角[2:]#输出从第三个开始至列表末尾的所有元素Out['珠海','佛山','惠州','东莞','中山','江门','肇庆']In珠三角[:4]+CGDP[:4]#列表合并输出Out['广州','深圳','珠海','佛山',2.58,3.33,2.81,2.02]2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础3.Python扩展数据类型(1)列表(list)python的内置函数range()可创建一个整数列表,使用range函数可生成各种类型的列表,在range在python3变成一个迭代器,输出需用list。2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础3.Python扩展数据类型Ina=range(5)#从0开始到4的整数=range(0,4)list(a)#显示整数列表Out[0,1,2,3,4]Inb=range(1,5)#从1开始到5整数列list(b)Out[1,2,3,4]Inc=range(0,9,2)#步长为2的整数列list(c)Out[0,2,4,6,8]2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础3.Python扩展数据类型(2)字典(dictionary)字典(dictionary)也是一种Python自定义数据类型,可存储任意类型对象,可看做列表的扩展形式。字典的每个键值对用冒号“:”分隔,每个键值对之间用逗号“,”分隔,整个字典包括在花括号{}中,格式如下:dict={key1:value1,key2:value2}2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础3.Python扩展数据类型(2)字典(dictionary)键必须是唯一的,但值则不必,值可以取任何数据类型,如字符串、数字或列表。字典是除列表以外Python中最灵活的自定义数据结构类型。列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典中的元素是通过键来存取的,而不是通过下标存取。2.1Python数据处理基础第2章Python数据分析平台2.1.2Python的编程基础3.Python扩展数据类型InDict={'区域':珠三角,'人均GDP':CGDP};Dict#定义字典Out{'区域':['广州','深圳','珠海','佛山','惠州','东莞','中山','江门','肇庆'],'人均GDP':[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74]}InDict['人均GDP’]#输出键为'人均GDP'的值Out[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74]InDict.keys()#输出所有键Outdict_keys(['区域','人均GDP'])InDict.values()#输出所有值Outdict_values([['广州','深圳','珠海','佛山','惠州','东莞','中山','江门','肇庆'],[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74]])2.1Python数据处理基础第2章Python数据分析平台2.1.3Python的函数定义1.函数的定义与调用(1)函数的定义下面简单介绍一下Python的函数定义方法。定义函数的句法:def函数名(参数1,参数2,…):函数体Return2.1Python数据处理基础第2章Python数据分析平台2.1.3Python的函数定义1.函数的定义与调用(1)函数的定义函数名可以是任意字符,但之前定义过的要小心使用,后定义的函数会覆盖先定义的函数。如果函数只用来计算,不需要返回结果,则可在函数中用print函数,这时只用变量名是无法显示结果的。一旦定义了函数名,就可以像Python的其他函数一样使用。2.1Python数据处理基础第2章Python数据分析平台2.1.3Python的函数定义1.函数的定义与调用(1)函数的定义由于Python是开源的,故所有函数使用者都可以查看其源代码,而且所有人都可以随时修改这些函数形成自己的函数。用户自己写的函数称为自定义函数,Python语言最大的优势就是可以随时随地编写自己的函数,而且可以像Python的内置函数一样使用自定义的函数。2.1Python数据处理基础第2章Python数据分析平台2.1.3Python的函数定义1.函数的定义与调用(1)函数的定义首先写一个类似于输出最大值的自定义函数,比较两个数的大小,并打印较大的数。print_max为函数名,x、y为函数参数,多个参数使用逗号隔开。Indefprint_max(x,y):ifx>y:print(x)else:print(y)2.1Python数据处理基础第2章Python数据分析平台2.1.3Python的函数定义1.函数的定义与调用(2)函数的调用函数写好之后,需要供别人使用,例如我们使用(调用)上面的比较大小的函数。Inprint_max(3,5)Out52.1Python数据处理基础第2章Python数据分析平台2.1.3Python的函数定义2.函数的参数与返回值(1)函数的调用函数的参数:函数参数分为形参和实参,定义函数时的参数为形参,调用函数时传入的参数为实参。例如在定义print_max函数时的x和y为形参,告诉使用者这里有两个参数需要传入,在调用函数时print_max(3,5)中的3和5为实参,是传入的真实参数。2.1Python数据处理基础第2章Python数据分析平台2.1.3Python的函数定义2.函数的参数与返回值(2)函数返回值:很多时候我们希望一个函数通过计算得出某个结果,同时我们能够拿到这个结果。例如上面的例子比较两个数的大小,我们不仅需要能够比较出来(打印出来),还需要得到其中较大的一个,那么这时候就需要返回语句。函数要想有返回值,可以使用return语句来实现。2.1Python数据处理基础第2章Python数据分析平台2.1.3Python的函数定义2.函数的参数与返回值(2)函数返回值举例说明:把我们自定义的print_max函数做如下修改:Indefprint_max(x,y):ifx>y:return(x)else:return(y)Inz=print_max(3,5);zOut52.1Python数据处理基础第2章Python数据分析平台2.1.3Python的函数定义2.函数的参数与返回值(2)函数返回值return语句语法特点:函数中使用return语句,可以将值返回。return语句后不加参数,返回的值是None。如果在函数当中使用return语句,return之后的代码行不会被执行。2.2Python数据处理方法第2章Python数据分析平台2.2.1Python数据处理包1.常用数据处理包
2.数据框及其构成
3.数据框的读存2.2.2数据框的基本操作1.数据框结构2.数据框显示3.选取列变量4.选取行数据2.2.3数据框的重组与透视1.合并数据框
2.数据框的重构3.数据框的透视2.2Python数据处理方法第2章Python数据分析平台2.2.1Python数据处理包1.常用数据处理包Python具有丰富的数据分析模块,大多数做数据分析的人使用Python是因为其强大的数据分析功能。所有的Python函数和数据集是保存在包(库)里面的。只有当一个包被安装并被载入时,它的内容才可以被访问。这样做一是为了高效(所有的方法加载会耗费大量的内存并且增加搜索的时间);二是为了帮助包的开发者,防止命名和其他代码中的名称冲突。2.2Python数据处理方法包名说明主要功能numpy数值计算包numpy(NumericPython)是Python的一种开源的数值计算扩展,以实现科学的计算。它提供了许多高级的数值计算工具,如矩阵数据类型、线性代数的运算库。专为进行严格的数值运算而产生,具有Matlab的大部分数值计算功能。pandas数据操作包提供类似于R语言的DataFrame操作,非常方便。pandas是面板数据(PanelData)分析的简写。它是Python最强大的数据分析和探索工具,因金融数据分析而开发,支持类似SQL的数据增删改查,支持时间序列分析,灵活处理缺失数据。matplotlib基本绘图包该包主要用于绘图和绘表,是一个强大的数据可视化工具,语法类似Matlab,是Python的基本绘图框架,提供了一整套和Matlab相似的命令API,十分适合基本数据分析制图。第2章Python数据分析平台2.2Python数据处理方法包名说明主要功能cufflinks动态绘图包cufflinks是一个可视化的库,可以无缝衔接pandas和plotly。cufflinks在plotly的基础上做了一进一步的包装,方法统一,参数配置简单,可以结合pandas的DataFrame灵活地画很多动态图。scipy科学计算包提供了很多科学计算工具和算法,方便易于使用,专为科学和工程设计的Python工具包。它包括统计、优化、整合、线性代数模块、傅里叶变换、信号和图像处理、常微分方程求解器等,包含常用的统计估计和检验方法statsmodels统计模型包statsmodel可以补充scipy.stats,是一个包含统计模型、统计测试和统计数据挖掘的Python模块。对每一个模型都会生成一个对应的统计结果,对时间序列有完美支持第2章Python数据分析平台2.2Python数据处理方法第2章Python数据分析平台2.2.1Python数据处理包1.常用数据处理包注意:安装程序包和调用程序包是两个概念,安装程序包是指将需要的程序包安装到电脑中,调用包是指将程序包调入Python环境中。如numpy、matplotlib、pandas、scipy和statsmodels这些常用的数据分析包Anaconda已自动安装了,而cufflinks包需要我们手动安装。有两种方式:2.2Python数据处理方法第2章Python数据分析平台2.2.1Python数据处理包1.常用数据处理包(1)命令行安装:在AnacondaPrompt的命令行安装>pipinstallcufflinks(2)平台里安装:在JupyterNotebook或JupyterLab中安装2.2Python数据处理方法第2章Python数据分析平台In!pipinstallcufflinksOutRequirementalreadysatisfied:cufflinksinc:\users\lenovo\anaconda3\lib\site-packages(0.17.3)Requirementalreadysatisfied:ipywidgets>=7.0.0inc:\users\lenovo\anaconda3\lib\site-packages(fromcufflinks)(7.5.1)Requirementalreadysatisfied:ipython>=5.3.0inc:\users\lenovo\anaconda3\lib\site-packages(fromcufflinks)(7.16.1)Requirementalreadysatisfied:plotly>=4.1.1inc:\users\lenovo\anaconda3\lib\site-packages(fromcufflinks)(4.12.0)……2.2Python数据处理方法第2章Python数据分析平台2.2.1Python数据处理包1.常用数据处理包(3)包及其函数使用下面以numpy为例介绍Python中已安装的包及其函数的使用。numpy是Python的一种开源的数值计算扩展,这种工具可用来存储和处理大型矩阵,比Python自身的列表结构要高效的多(该结构也可以用来表示二维数组(矩阵matrix)和多维数组),基本可替代matlab的矩阵运算。2.2Python数据处理方法第2章Python数据分析平台2.2.1Python数据处理包1.常用数据处理包(3)包及其函数使用Python调用包的命令是import,如要调用上述的数值分析包,可用Inimportnumpy#将以numpy名调用函数numpy.array([1,2,3,4,5])#根据列表构建的一维数组要使用这些包中的函数,可直接使用包名加“.”。2.2Python数据处理方法第2章Python数据分析平台如要简化包的写法,可用as命令赋予包的别名,如Inimportnumpyasnpa=np.array([1,2,3,4,5]);aOutarray([1,2,3,4,5])Inb=np.arange(5);b#数差序列,差距1Outarray([0,1,2,3,4])Inc=np.arange(1,5,0.5);c#等差数列,差距0.5Outarray([1.,1.5,2.,2.5,3.,3.5,4.,4.5])Ind=np.linspace(1,9,5);d#等距数列Outarray([1.,3.,5.,7.,9.])2.2Python数据处理方法第2章Python数据分析平台numpy包中的函数调用Inimportnumpyasnp#将以np名调用函数np.log([1,2,3,4,5])也可以用别名方式直接调用包中具体函数。Infromnumpyimportlogasln#定义函数log的别名为lnln([1,2,3,4,5])2.2Python数据处理方法第2章Python数据分析平台用astype()可以对numpy中的数据类型进行转换,该命令也适用于下面的数据框序列。Inc.astype(int)#将数组c转换为整型Outarray([1,1,2,2,3,3,4,4])Ina.astype(str)#将数组a转换为字符型Outarray(['1','2','3','4','5'],dtype='<U11')2.2Python数据处理方法第2章Python数据分析平台2.2.1Python数据处理包2.数据框及其构成数据框相当于关系数据库中的结构化数据类型,传统的数据大都以结构化数据存储于关系数据库中,因而Pyhton的数据分析主要是以数据框为基础的。这里说的数据框可以看做结构化数据的一个Python实现,Python中数据框是用pandas包中的DataFrame()函数生成的。DataFrame()命令可用序列构成一个数据框。2.2Python数据处理方法第2章Python数据分析平台2.2.1Python数据处理包2.数据框及其构成(1)数据框生成Inimportpandasaspdpd.DataFrame()#生成空数据框Out—InfrompandasimportDataFrame#数据框的简写,本书采用的是该格式DataFrame()Out—2.2Python数据处理方法第2章Python数据分析平台(2)根据列表创建数据框In珠三角=['广州','深圳','珠海','佛山','惠州','东莞','中山','江门','肇庆'];珠三角Out['广州','深圳','珠海','佛山','惠州','东莞','中山','江门','肇庆']InDataFrame(珠三角)Out00广州1深圳2珠海3佛山4惠州5东莞6中山7江门8肇庆2.2Python数据处理方法第2章Python数据分析平台相反,list()或.tolist()可将数据框的列数据转换为列表。InCGDP=[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74];CGDP#人均GDPOut[2.58,3.33,2.81,2.02,1.39,1.36,1.51,1.28,0.74]InDataFrame(data=CGDP,index=珠三角,columns=['CGDP'])OutCGDP广州2.58深圳3.33珠海2.81佛山2.02惠州1.39东莞1.36中山1.51江门1.28肇庆0.742.2Python数据处理方法第2章Python数据分析平台2.2.1Python数据处理包3.数据框的读存(1)读取Excel格式数据使用pandas包中的read_excel可直接读取excel文档中的任意表单数据,其读取命比较简单,例如,要读取DAV_data.xlsx文档的表单的[数据],可用以下命令,其中GD为数据框对象。2.2Python数据处理方法第2章Python数据分析平台【Excel的基本操作】2.2Python数据处理方法第2章Python数据分析平台2.2Python数据处理方法第2章Python数据分析平台许多情况下,数据框是按格式输出的,都可用print将其按文本列表的形式输出,但这时中文数据有可能会出现排版乱码情况。2.2.1Python数据处理包3.数据框的读存2.2Python数据处理方法第2章Python数据分析平台(2)数据框数据的保存前面说过,Python管理数据集的最好方式是电子表格格式,pandas保存电子表格数据的命令也很简单。2.2.1Python数据处理包3.数据框的读存InGD.to_excel('myGD.xlsx’)#将数据框GD保存myGD.xlsx文档中2.2Python数据处理方法第2章Python数据分析平台前面已提到,pandas是基于numpy的一种数据分析包,该包是为了解决数据分析任务而创建的。pandas纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。pandas顾名思义就是面板数据分析序列(paneldataanalysisserise),故pandas是数据处理和时序数据分析的首选包。2.2.2数据框的基本操作2.2Python数据处理方法第2章Python数据分析平台InGD.info()#数据框信息Out<class'pandas.core.frame.DataFrame'>Int64Index:420entries,1to420Datacolumns(total8columns):#ColumnNon-NullCountDtype----------------------------0年份420non-nullint641地区420non-nullobject2GDP420non-nullfloat643人均GDP420non-nullfloat644从业人员420non-nullfloat645进出口额420non-nullfloat646消费总额420non-nullfloat647RD经费420non-nullfloat64dtypes:float64(6),int64(1),object(1)memoryusage:29.5+KB(1)数据框的基本信息2.2.1Python数据处理包1.数据框结构2.2Python数据处理方法第2章Python数据分析平台(2)数据框的维度2.2.2数据框的基本操作1.数据框结构InGD.shape#数据框的行数和列数Out(420,8)InGD.shape[0]#数据框的行数Out420InGD.shape[1]#数据框的列数Out82.2Python数据处理方法第2章Python数据分析平台(3)数据框的行列名2.2.2数据框的基本操作1.数据框结构InGD.index#数据框行名OutInt64Index([1,2,3,4,5,6,7,8,9,10,...416,417,418,419,420],dtype='int64',name='序号',length=420)InGD.columns#数据框列名OutIndex(['年份','地区','GDP','人均GDP','从业人员','进出口额','消费总额','RD经费'],dtype='object')2.2Python数据处理方法第2章Python数据分析平台(1)函数法2.2.2数据框的基本操作2.数据框显示2.2Python数据处理方法第2章Python数据分析平台2.2Python数据处理方法第2章Python数据分析平台(2)全局设置法2.2.2数据框的基本操作2.数据框显示In#pd.set_option('display.max_rows',None)#显示所有数据行pd.set_option('display.max_rows',10)#共显示10行数据2.2Python数据处理方法第2章Python数据分析平台选取数据框中列变量的方法主要是“.”法或[‘’],这是Python中最直观的选择变量的方法,比如,要选取数据框GD中的“年份”和“地区”变量,直接用GD.年份与GD.地区即可,也可用GD[‘年份’]与GD[‘地区’],该方法书写比
“.”法烦琐,但却是最不容易出错且直观的一种方法,且可推广到多个变量的情形。2.2.2数据框的基本操作3.选取列变量2.2Python数据处理方法第2章Python数据分析平台(1)选取一列(单变量)2.2Python数据处理方法第2章Python数据分析平台(2)选取多列(多变量)2.2Python数据处理方法第2章Python数据分析平台(1)横向数据2.2.2数据框的基本操作4.选取行数据2.2Python数据处理方法第2章Python数据分析平台2.2Python数据处理方法第2章Python数据分析平台2.2.2数据框的基本操作4.选取行数据(1)横向数据【Excel的基本操作】Excel提供了多种数据筛选的方法,本节将介绍自动筛选,自动筛选适用于对数据进行简单的条件筛选,筛选时将不满足条件的数据暂时隐藏起来,只显示符合条件的数据,是一种最简单的数据筛选方式。2.2Python数据处理方法第2章Python数据分析平台2.2.2数据框的基本操作4.选取行数据【Excel的基本操作】1)选中数据清单中的任一数据单元格,切换到“数据”选项卡,在“排序和筛选”组中单击“筛选”,这时,数据清单中的每列的标志旁边都会出现一个下拉箭头。如下图所示。2)点击“年份”会出现筛选框,选取或输入2019将筛选2019年的数据。2.2Python数据处理方法第2章Python数据分析平台2.2Python数据处理方法第2章Python数据分析平台(2)纵向数据2.2Python数据处理方法第2章Python数据分析平台(3)面板数据2.2Python数据处理方法第2章Python数据分析平台同上,点击“地区”会出现筛选框,选取相关地区将筛选相应地区的数据。2.2Python数据处理方法第2章Python数据分析平台2.2.3数据框的重组与透视1.合并数据框首先构建两个用于重塑的数据框df1和df2。2.2Python数据处理方法第2章Python数据分析平台2.2Python数据处理方法第2章Python数据分析平台(1)数据框的追加append2.2Python数据处理方法第2章Python数据分析平台(2)数据框的合并merge2.2Python数据处理方法第2章Python数据分析平台2.2.3数据框的重组与透视2.数据框的重构Python数据分析包pandas的数据框可以看做矩阵的一种推广,具有一般关系型数据库数据结构的一些特点,如删除数据框列与行,设置数据框索引(行名)等,本文下面的数据分析和可视化基本都是基于数据框的。2.2Python数据处理方法第2章Python数据分析平台2.2Python数据处理方法第2章Python数据分析平台(1)增加列2.2Python数据处理方法第2章Python数据分析平台(2)删除列axis=0时表示删除行,如df.drop([1,4],axis=0)即为删除1和4行。2.2Python数据处理方法第2章Python数据分析平台(3)数据框的索引DataFrame可以通过set_index方法设置某一列变量为行索引,使用reset_index还原行索引为列变量。2.2Python数据处理方法第2章Python数据分析平台(3)数据框的索引应用reset_index函数可以还原行索引,即将上面的地区行索引还原为第二列变量。2.2Python数据处理方法第2章Python数据分析平台(4)数据框的排序2.2Python数据处理方法第2章Python数据分析平台(4)数据框的排序2.2Python数据处理方法第2章Python数据分析平台(4)数据框的排序2.2Python数据处理方法第2章Python数据分析平台2.2.3数据框的重组与透视3.数据框的透视pandas有一个数据透视函数pivot(),可以生成任意维度透视表,可以实现Excel等电子表格的透视表功能。但这里的透视函数pivot主要用于数据的重构,并没有统计计算功能,要做数据的透视分析,参见4.1节的透视表函数pivot_table。pivot有三个重要的参数index(行)、columns(列)、values(值),如果不改变函数中的参数顺序的话,可以不写参数名,只写变量名。2.2Python数据处理方法第2章Python数据分析平台(1)无筛选透视表2.2Python数据处理方法第2章Python数据分析平台(1)无筛选透视表2.2Python数据处理方法第2章Python数据分析平台2.2.3数据框的重组与透视3.数据框的透视(1)无筛选透视表【Excel的基本操作】1)选择数据清单中的任意一个单元格,单击“插入”选项卡,单击“数据透视表”下拉按钮,执行“数据透视表”命令,将弹出如下图所示的“创建数据透视表”对话框。2.2Python数据处理方法第2章Python数据分析平台2.2.3数据框的重组与透视3.数据框的透视(1)无筛选透视表【Excel的基本操作】2)在“请选择要分析的数据”选区中,默认已经选定了前面所选单元格所在的数据区域,也可以重新选择数据区域,单击右边的折叠按钮,选择完数据区域后单击展开按钮即可。在“选择放置数据透视表的位置”选区中,可以选择在新工作表中或者现有工作表中放置数据透视表,这里选择“新工作表”,然后单击“确定”按钮。2.2Python数据处理方法第2章Python数据分析平台2.2Python数据处理方法第2章Python数据分析平台2.2.3数据框的重组与透视3.数据框的透视(1)无筛选透视表【Excel的基本操作】3)单击确定后,在新工作表的右边将出现“数据透视表字段列表”框。在字段复选框中选中“年份”、“地区”和“人均GDP”三项,其中“人均GDP”作为求和项、“地区”作为行标签、“年份”作为列标签,可拖动该字段到列标签区域内即可。在“数据透视表字段列表”框中设置的同时,数据透视表会即时显示相应的结果。如下图所示。2.2Python数据处理方法第2章Python数据分析平台2.2Python数据处理方法第2章Python数据分析平台2.2.3数据框的重组与透视3.数据框的透视(2)有筛选透视表2.2Python数据处理方法第2章Python数据分析平台(2)有筛选透视表2.2Python数据处理方法第2章Python数据分析平台(2)有筛选透视表2.2Python数据处理方法第2章Python数据分析平台2.2.3数据框的重组与透视3.数据框的透视(2)有筛选透视表【Excel的基本操作】在字段复选框中选中“年份”、“地区”和“GDP、消费总额”三项,其中“GDP、消费总额”作为求和项、“年份”作为行标签、“地区”作为列标签,如下图所示。2.2Python数据处理方法第2章Python数据分析平台第2章Python数据分析平台第3章数据的基本可视化方法3.1基于列表的可视化3.1.1Matplotlib的基本绘图1.横向数据的绘图
2.纵向数据的绘图
3.1.2Matplotlib的图形设置1.图形大小设置2.标题、标签及颜色3.线型和符号3.1基于列表的可视化matplotlib
是Python的基本绘图包,是一个Python的图形框架。它是Python最著名的绘图库,提供了一整套和Matlab相似的命令API,十分适合交互式地进行制图。在绘制中文图形时,须作一些基本设置。3.1.1Matplotlib的基本绘图1.横向数据的绘图3.1基于列表的可视化3.1.1Matplotlib的基本绘图1.横向数据的绘图(1)条图(bar)条图又称条形图或柱形图,是以宽度相等的条形高度或长度的差异来显示统计指标数值多少或大小的一种图形。条图的高度可以是频数或频率,图的形状看起来是一样的,但是刻度不一样。matplotlib画条形图的命令是bar()。3.1基于列表的可视化3.1.1Matplotlib的基本绘图1.横向数据的绘图(1)条图(bar)3.1基于列表的可视化3.1.1Matplotlib的基本绘图1.横向数据的绘图(1)条图(bar)3.1基于列表的可视化3.1.1Matplotlib的基本绘图1.横向数据的绘图(1)条图(bar)【Excel的基本操作】筛选2015年珠三角数据,选择C317:C337和E317:E337单元格区域,切换到“插入”选项卡,在“图表”组中单击“柱形图”按钮,在子图表类型中,选择二维柱形图,即可生成如下图。其他统计图的Excel绘制基本一致,所以下面从略。3.1基于列表的可视化(1)条图(bar)【Excel的基本操作】3.1基于列表的可视化3.1.1Matplotlib的基本绘图1.横向数据的绘图(2)饼图(pie)饼图也称圆图,是由一个圆或多个扇形组成,每个扇形显示不同颜色。每个扇形的角度大小可显示一个数据系列中各项的大小与各项总和的比例。在matplotlib中作饼图也很简单,只要使用命令pie()就可以了。3.1基于列表的可视化3.1.1Matplotlib的基本绘图1.横向数据的绘图(2)饼图(pie)3.1基于列表的可视化3.1.1Matplotlib的基本绘图2.纵向数据的绘图3.1基于列表的可视化3.1.1Matplotlib的基本绘图2.纵向数据的绘图(1)线图(line)3.1基于列表的可视化3.1.1Matplotlib的基本绘图2.纵向数据的绘图(2)点线图(point-line)3.1基于列表的可视化(2)点线图(point-line)【Excel的基本操作】筛选佛山数据,选择B列和D列数据,切换到“插入”选项卡,在“图表”组中单击“折线图”按钮,在子图表类型中,选择二维折线图,即可生成如下图。3.1基于列表的可视化(2)点线图(point-line)【Excel的基本操作】3.1基于列表的可视化3.1.1Matplotlib的基本绘图2.纵向数据的绘图(3)面积(stackplot)3.1基于列表的可视化3.1.2Matplotlib的图形设置3.1基于列表的可视化Python中的每一个绘图函数,都有许多参数设置选项,但大多数绘图函数的选项是同样的,matplotlib的绘图函数非常强大,包含许多图形参数设置,可以通过帮助学习。3.1.2Matplotlib的图形设置1.图形大小设置用参数figsize
可设定图形大小。3.1基于列表的可视化3.1.2Matplotlib的图形设置1.图形大小设置3.1基于列表的可视化3.1.2Matplotlib的图形设置2.标题、标签及颜色plt.title:设置图形标题和字体大小;plt.xlabel、plt.ylabel:设置坐标轴名称;plt.xlim、plt.ylim:设置横纵坐标轴范围;colors:控制图形的颜色,c='red':设置为红色。3.1基于列表的可视化3.1.2Matplotlib的图形设置2.标题、标签及颜色3.1基于列表的可视化3.1.2Matp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年通榆县信访备考题库中心公开选调事业编制工作人员备考题库及参考答案详解一套
- 2026年重庆市大渡口长征医院招聘备考题库及完整答案详解1套
- 2026年重庆市九龙坡区人民医院招聘备考题库及1套完整答案详解
- 2026年石家庄城市建设发展集团有限公司劳务派遣制人员招聘备考题库及参考答案详解
- 中国医学科学院药物研究所2026年度面向社会公开招聘23人备考题库及答案详解1套
- 领导带班生产规定制度
- 野外安全生产管理制度
- 医药公司生产管理制度
- 生产资料流通制度
- 生产服务部管理制度
- 员工隐私安全意识培训课件
- 预防接种规范知识培训课件
- 部队装备换季保养课件
- DB 5303∕T 23-2024 《露地甜樱桃种植技术规程》
- 《微压富氧康养整体空间设备》
- 卫星互联网基础知识培训课件
- 2025年敖汉旗就业服务中心招聘第一批公益性岗位人员的112人模拟试卷含答案详解
- 婚姻家庭继承实务讲座
- 新内瘘穿刺护理
- 钳工个人实习总结
- 大健康养肝护肝针专题课件
评论
0/150
提交评论