版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章
Python常用库SOUTHWESTERNUNIVERSITYOFFINANCEANDECONOMICS严谨勤俭求实开拓01科学技术库NumPy02数据处理库pandas03数据可视化库Matplotlib04实训学习目标掌握Numpy多维数组的创建和操作技巧,能够进行数据处理和计算掌握如何使用Series和DataFrame处理和分析数据掌握各种类型的数据可视化图表,有效地展示和传达数据分析的结果引入案例苹果作为全球知名的电子品牌产品,产品覆盖范围广,使用Python数据分析能够为苹果带来很高的经济效益。在市场分析和趋势预测方面:对销量数据进行时间序列分析,识别销售高峰期。基于市场趋势,可以预测未来产品的需求量和市场动态,从而调整生产计划和供应链管理,确保产品供应与市场需求相匹配。在用户行为分析和市场定位方面:使用Python分析用户数据(如购买行为、偏好和用户反馈),可以帮助苹果公司更好地理解不同用户群体的需求和偏好。在产品质量和性能分析方面:借助Python的数据分析工具,可以收集和分析Mac电脑的性能测试数据,通过可视化技术识别产品中性能表现不佳的区域。同时统计不同型号产品的故障率,分析其与生产批次、材料选择等因素的关系,利用scipy进行假设检验,确定故障原因。通过对各个阶段进行跟踪和分析,能够及时调整设计或生产流程。思考:各个品牌通过短视频、直播等方式营销带货,企业获得运营及销售信息后应如何分析,哪些数据对于企业提升效益来说最为重要?主要内容3.1NumPyNumPy是Python中用于科学计算的基础包,提供了强大的多维数组对象和用于处理这些数组的函数3.2pandaspandas是Python中用于数据分析和处理的重要库,它提供了灵活而高效的数据结构和数据操作工具,使得数据的清洗、转换和分析变得更加简单和直观。3.3MatplotlibMatplotlib是Python中最流行的数据可视化库之一,它能够创建各种类型的静态、交互式和动态图形,帮助用户以直观、美观的方式呈现数据。Part1科学技术库NumPy严谨勤俭求实开拓3.1科学技术库(NumPy) NumPy是Python的一个开源数值计算库,也是Python数值计算最重要的基础包,主要用于数组计算,矩阵运算等。NumPy是在一个连续的内存块中存储数据,独立于其他Python内置对象。比起Python的内置序列,NumPy数组使用的内存更少,可以在整个数组上执行复杂的计算,而不需要Python的for循环。在数据可视化中,NumPy库非常方便地与其他数据可视化工具(如Matplotlib)结合使用,帮助用户快速高效地进行数据处理和可视化。3.1.1创建数据组例(1)使用array函数,该函数可以接受传入数据,然后将其转化为Numpy数组(2)array()可以将一组等长数组转换为n维列表
(3)Numpy提供创建特殊形式组数的函数Numpy特点:n维数组对象(ndaarry),Numpy提供了丰富的数组处理函数,可以用来创建、操作多维数组,进行数据处理和数学运算等,在处理大量、复杂的数据时这些函数乐意方便地用于数据处理和可视化3.1.2数学运算NumPy库提供了多种数学函数,可以方便地对数据进行数学运算,这些运算函数可以用于对数据进行处理,进而用于数据可视化。(1)Numpy中大小相等的数据之间的算术运算会应用到元素级(2)Numpy库中常用的运算函数①add()函数用于逐元素求和
②power()函数对数组逐元素进行幂运算③round()函数对每个元素四舍五入到最接近的整数3.1.2数学运算Numpy中其他常用的数学运算函数及功能3.1.3数据过滤和处理NumPy提供了多种函数用于数据的过滤和处理,如where()函数可以用来选取符合条件的数据,resize()函数可以用来改变数组的大小等。这些函数能够帮助用户对数据进行进一步处理,以便更好地展示数据。当需要根据条件从数组中选择特定的元素时,可以使用NumPy提供的数据过滤函数。例:①使用np.where()函数根据条件选择元素、提取元素②当需要对数组进行数据过滤时,NumPy提供了一些强大的函数,如使用np.nonzero()函数找出数组中非零元素的索引。③使用np.isin()函数检查数组中的元素是否包含在另一个数组中。3.1.3数据过滤和处理Numpy中还包括其他用于数据处理的函数3.1.4数据统计Numpy还提供了统计函数,可以用来计算数据的统计特性。这些函数可以帮助用户对数据进行统计分析,找出数据的中心趋势、离散程度、最大最小值等信息,从而更好地理解数据,为数据可视化提供支持。例:使用np.mean()函数计算数组的平均值
总的来说,numpy库在数据可视化中提供了丰富的功能和工具,可以帮助用户更轻松地处理和展示数据。同时,Numpy库的高效性和灵活性也使其成为数据处理和可视化领域中的重要工具之一。3.1.4数据统计Numpy中其他常用的数据处理函数Part2数据处理库pandas严谨勤俭求实开拓3.2数据处理库(pandas)pandas是Python中用于数据处理和分析的强大库,它提供了灵活而高效的数据结构和数据操作工具,使得数据的清洗、转换和分析变得更加简单和直观。pandas的核心数据结构包括Series(一维数组)和DataFrame(二维表格),这两种数据结构能够轻松处理不同类型的数据,并且支持各种数据操作和分析,例如索引、切片、合并、分组、聚合等。除了数据结构之外,pandas还提供了丰富的功能和方法,包括数据读取、数据清洗等。借助于这些功能,用户可以方便地进行数据预处理、数据探索性分析和建模分析,为实际业务问题提供可靠的数据支持。总之,pandas是Python数据科学领域中不可或缺的重要工具,它为用户提供了丰富的数据处理和分析功能,使得复杂的数据操作变得简单易行。3.2数据处理库(pandas)在使用pandas库时,首先要安装pandas库,可以使用以下命令进行安装:Pipinstallpandas安装完成后通过以下命令将pandas库导入Importpandasaspd将pandas库导入后可以进行读取文件的操作,从而获取数据进行分析。
3.2.1pandas的数据结构1.SeriesSeries是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及⼀组与之相关的数据标签(即索引)组成。由一组数据产生最简单的Series:Obj=pd.Series([1,2,3,4,5])2.DataFrameDataFrame是pandas库提供的一种核心数据结构,是一种二维表格型的数据结构,别适合处理结构化数据。它含有⼀组有序的列,每列可以是不同的值类型(数值、字符串、布尔值等)。DataFrame既有⾏索引也有列索引,其中的数据是以⼀个或多个⼆维块存放的。创建DataFrame最常⽤的⼀种方式是直接传入⼀个由等长列表或Numpy数组组成的字典3.2.2数据读取1、读取excel文件(1)语法(2)参数说明
importpandasaspd#导入pandas库data=pd.read_excel(io,sheet_name=None,header=None,name=none,index_col=None,usecols=None,skiprows=None,nrows=None)#读取excel文件 io:读取的excel文件名,如r'./vote.excel"; sheet_name:excel文件中的sheet表名;
header:哪一行设置为列索引,默认是第一行,即header=0;
names:列索引名;
index_col:使用哪一列作为行索引,默认从0开始;
usecols:读取表格中哪几列,必须是位置索引; skiprows:跳过前几行读取文件,默认从0开始;nrows:读取多少行数据。3.2.2数据读取2、读取csv文件(1)语法(2)参数说明csv文件是以逗号为分隔符的文件,读取参数与excel基本类似。文件为gbk格式csv,若不设置encoding参数程序会报错。encoding:默认为'utf-8',还有中文编码‘gbk’、‘gb18030’、‘gb2312’。就汉字而言,三种编码方式的表示范围是:GB18030>GBK>GB2312即GBK是GB2312的超集,GB1803又是GBK的超集。一般读取中文文本可以直接用encoding=GB18030。data=pd.read_cvs(filepath_or_buffer:FilePathOrBuffer,encording=none)3.2.2数据读取3、读取txt文件(1)语法(2)参数说明#读取txt文件data=pd.read_table(filepath_or_buffer:FilePathOrBuffer,sep="\t")txt文件是以指制表符\t为分隔符的文件,参数与excel、csv基本类似,不同的地方在于必须要指定sep。sep:默认为'\t'。Part3数据可视化库Matplotlib严谨勤俭求实开拓3.3数据可视化库(Matplotlib)Matplotlib模块是一个用于创建图表和数据可视化的功能强大且灵活的工具。它可以用来绘制各种类型的图表,包括折线图、散点图、柱状图、饼图等。在数据分析和数据可视化领域,Matplotlib模块经常被用来探索数据、展示数据分布、比较不同数据集之间的关系以及展示趋势。通过Matplotlib模块,用户能够完全控制图表的外观和格式,包括图表的大小、颜色、线型、标签等。此外,Matplotlib还具有丰富的功能,例如添加图例、注释、网格线等,以帮助用户更清晰地呈现数据。在数据可视化中,Matplotlib通常与pandas、Numpy等数据处理模块一起使用。用户可以通过这些模块加载数据,然后使用Matplotlib创建各种图表来展示数据。3.3.1认识Matplotlib在任何绘图之前,需要创建一个Figure对象才能开始绘图:pltfig=plt.figure()#创建figure对象在拥有Figure对象之后,必须创建subplot才可以进行绘图:其中,nrows和ncols分别表示子图的行数和列数,index表示在这个网格中子图的索引(从1开始计数),**kwargs表示可选参数,例如调整子图的位置和间距等。常见的属性包括标题(title)、坐标轴标签(xlabel和ylabel)、坐标轴范围(xlim和ylim)等。通过调用这个函数,可以方便地对子图的各种属性进行设置。
fig.add_subplot(nrows,ncols,index,**kwargs)
importmatplotlib.pyplotasplt
#导入matplotlib库,为通常情况下的引入方式:3.3.2绘制线图(Matplotlib)Matplotlib中最常用的函数是plot()函数,用来绘制线图。在绘制图表时,plot()函数可以接受x和y坐标数组作为参数,将这些数据点连接起来,并根据需要添加不同的标记、线条颜色和样式。importmatplotlib.pyplotasplt#导入matplotlib库plt.plot(x,y,**kwargs)#接受xy坐标作为参数命令:x=np.linspace(0,10,100)#0到10等距离的100个点y=np.sin(x)plt.plot(x,y,color='#FF0000')#使用红色画线plt.show()3.3.3绘制垂直柱状图x表示柱子的横坐标;height表示柱子的高度;width表示柱子的宽度;bottom表示y轴的起始值;align表示柱子与x轴坐标的对齐方式。importmatplotlib.pyplotasplt#导入matplotlib库#绘制垂直柱状图plt.bar(x,height,width=0.8,bottom=None,align='center',**kwargs)命令:x_date=[5,7,4,6,8]y_date=[10,15,12,16,14]#x表示起始位置plt.bar(x=x_date,height=y_date,width=0.8,color='black’)plt.show()3.3.4绘制水平柱状图
y表示柱子在y轴上的坐标;width表示柱子的宽度,即水平长度;height表示柱子的高度,与垂直柱状图中的宽度相对应;left表示每个柱子在x方向的起始坐标;align表示柱子同y轴坐标的对齐方式。importmatplotlib.pyplotasplt#导入pandas库
#绘制水平柱状图plt.barh(y,width,height=0.8,left=None,align='center',**kwargs)x_date=[5,7,4,6,8]y_date=[10,15,12,16,14]#x表示起始位置plt.barh(y=x_date,width=y_date,height=0.8,color='grey’)plt.show()3.3.4绘制饼图
explode表示每个部分距离两边区域的距离,单位为圆半径的长度;labels表示每个区域对应的字符串序列;colors表示每个区域对应的颜色;autopct表示每个区域对应的数值,可以是格式化的形式(如"%3.2f%%",后两个百分号会转义成一个百分号)或者可以调用函数;pctdistance表示每个区域中的文字距离圆心的距离,单位为圆半径;shadow:是bool类型,表示是否添加阴影;labeldistane表示图例距离圆心的距离,单位为半径长度;startangle表示饼图的起点从x轴逆时针旋转的角度;radius表示饼图半径长度。importmatplotlib.pyplotasplt#导入pandas库plt.pie(x,explode=None,labels=None,colors=None,autopct=None,pctdistance=0.6,shadow=False,labeldistance=1.1,startangle=0,radius=1,counterclock=True,wedgeprops=None,textprops=None,center=0,0,frame=False,rotatelabels=False,*,normalize=None,data=None)#绘制饼图languages=['JavaScript','HTML/CSS','SQL','Python','Java’]popularity=[59219,55466,47544,36443,35917]plt.pie(popularity,labels=languages)plt.show()3.3.6绘制散点图x,y表示数据点的位置;s表示点的大小;c表示点的颜色;marker表示点的形状。importmatplotlib.pyplotasplt#导入pandas库#绘制散点图plt.scatter(x,y,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东省枣庄滕州市2025-2026学年上学期期末七年级生物试卷(含答案)
- 化工医药设备管理培训课件
- 2025-2026学年河南省南阳市六校联考高三(上)期末数学试卷(含答案)
- 2026年上海市浦东新区初三上学期一模数学试卷和参考答案
- 钢结构项目管理技术要领
- 特种作业人员管理制度
- 飞机的科普教学课件
- 市政工程公司数据管理制度
- 2026年河南投资集团招聘部分管理人员10人备考考试题库及答案解析
- 2026广西梧州市招聘中小学(幼儿园)教师260人考试参考题库及答案解析
- 市政工程养护管理方案汇编
- 房地产项目供应链标准化流程管理
- 具身智能+老年人认知障碍早期识别方案可行性报告
- 江苏省专升本2025年食品科学与工程食品化学测试试卷(含答案)
- 急诊PDCA课件教学课件
- (2021-2025)5年高考1年模拟物理真题分类汇编专题04 机械能守恒、动量守恒及功能关系(广东专用)(解析版)
- 2025-2030手术机器人医生培训体系构建与医院采购决策影响因素报告
- 乳糜胸护理新进展
- 社区护理中的青少年保健
- 手术室胆囊结石护理查房
- QGDW10384-2023输电线路钢管塔加工技术规程
评论
0/150
提交评论