版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据分析NumPy类库07【学习目标】
多维数组概念认知深入理解多维数组的核心概念,建立对这类数据结构的基础认知。掌握多维数组的索引规则,熟练运用各类运算方法处理相关数据。
NumPy向量运算实操熟练借助多维数组方法及NumPy函数,独立完成向量运算相关实操任务。【学习目标】:创建多维数组
数组创建前提说明需以多维数组为操作对象,可新建或将列表、元组等其他类型数据转换为多维数组。数组创建方法列举多维数组创建方法主要有array()、arange()、linspace()、zeros()、ones()、eye()、empty()和diag()等。基础类型转换功能NumPy的array()函数可将数值、字符串、列表、元组、集合等Python数据类型转换成多维数组。数组类型指定规则转换时可用dtype参数指定成员类型,未指定则自动转为兼容所有数据的类型,且采用满足要求的最小化类型。多维数组转换示例可将Python列表转换成二维数组,还能转为三维数组,后者可作为实践练习题操作。【学习目标】:创建多维数组array()函数【学习目标】:创建多维数组arange()函数arange()参数特性类似Python的range(),包含start、stop、step参数,用法基本相同,但arange()参数可为浮点数,range()仅能为整数。arange()参数默认值start参数默认值为0,step参数默认值为1,arange()的step参数支持浮点数,可生成浮点型数组。【学习目标】:创建多维数组linspace()函数
linspace基础功能可创建数值均匀间隔的多维数组,前3个参数为start、stop、num,num默认值50,分别控制首尾与成员数。
endpoint参数规则该参数默认值为True,此时数组成员包含stop;值为False时则不包含,两种情况对应不同的数据间隔计算方式。
多维数组创建方法当start或(和)stop为元组时可创建二维或多维数组,可用axis参数设置数据存放轴,默认沿轴0存放。【学习目标】:创建多维数组其他函数
全值数组创建方法可使用np.ones()创建全1多维数组,用np.zeros()创建全0多维数组,二者参数为数组shape属性值,用法一致。
特殊数组创建说明np.empty()创建值不确定的多维数组,参数与ones()一致,值为内存随机值;np.eye()用于创建指定阶数的主对角线为1的方阵。蒙特卡罗法及随机数蒙特卡罗法是金融数据分析常用方法,通过建模、生成随机数、计算机抽样实现,random模块可生成对应随机数,后续案例也用该模块。随机数组生成示例可生成[0,1)区间平均分布的3×4二维随机数组,数据量少均值与0.5误差大,数据量增加会趋向理论值0.5。正态分布数组创建使用randn()可创建服从标准正态分布的数据,NumPy的random模块还有多种常用函数。【学习目标】:创建多维数组random模块【学习目标】:数组成员操作
数组存储特性ndarray将数据与元数据分开存放,数据存于固定大小连续单元,各单元存储大小相同,可不改存储任意调整数组形状。数组成员操作定义对多维数组的形状改变、数据切片或索引统称为数组成员操作,这类操作不会改变数组的连续物理存储结构。【学习目标】:数组成员操作数组变形
01多维数组本质与变形多维数组数据存储在连续物理区域,本质是一维线性结构,处理时常用二维、三维结构,这类逻辑结构变化为数组变形。
02数组结构修改方法可通过直接修改shape属性、调用reshape()方法修改数组结构,ravel()、flatten()可将多维数组转一维,flat()返回可枚举遍历的对象。
03ravel()存储遍历规则使用ravel()拉伸多维数组为一维时,数组数据默认采用先行后列的存储模式进行转换。【学习目标】:数组成员操作数组索引
基本索引方法说明多维数组单成员索引可分层连写方括号从轴0到轴n逐步索引,也可将各维度索引值用逗号隔开放一个方括号内。全索引与省略规则未给出索引值的轴为全索引,全索引轴在最右侧可省略逗号,否则用“:”,连续多省略轴非最右可用“…”代替。特殊索引方式介绍可用布尔数组索引,其长度需与被索引轴长度一致,也可用整数数组做花式索引,各轴索引序列长度需相同或为1。where()函数索引应用np.where()可依condition返回对应位置值,无x、y时返回True成员索引元组,可作花式索引参数,一维场景等效列表推导式但返回数组。【学习目标】:数组成员操作数组切片
多维数组索引方式类似Python列表,可通过切片获取子集,也能以组合索引操作成员,支持将多[]合并为单[],各维度用“,”分隔。
切片参数规则说明采用“start:stop:step”格式切片,start含对应值默认0,stop不含对应值不可省略,step正负决定切取方向,默认值为1。
多维切片结果特性单轴切片时,其他轴用单索引、类数组索引或切片,均截取数组区域,操作结果为原数组视图,修改会同步原数组。【学习目标】:多维数组运算多维数组的运算指的是数组中成员的运算。本节主要介绍多维数组运算的规律和方法【学习目标】:多维数组运算算术运算
单操作数数组运算对多维数组每个成员做单操作数运算,如负号运算,为每个元素加负号,结果是填充运算结果的新数组。
同形数组算术运算两个形状相同的多维数组运算时,对应位置元素运算,结果存对应位置,构成同形状的新数组。
复合运算符使用规则类似-+、*+这类复合运算符用于修改操作数,需数组成员类型精度高于参与运算的变(常)量精度。
运算类型转换规则Python数值运算结果会向能保存结果精度的类型转换,复合运算若原数组精度不足会出现运算异常。
数组矩阵乘法实现数学上的矩阵乘法运算,在Python中可以使用“@”或矩阵的dot()成员方法来实现。【学习目标】:多维数组运算数组的广播
数组运算基础规则同形状数组直接对应位置运算;形状不同时,满足条件可通过广播复制数据构造同形状数组再运算。数组广播条件说明维度不同时在小数组左侧加1维对齐;某维度一为1一大于1时,复制维度为1的数据对齐;对应维度既无一为1也不相等则运算报错。广播结果与操作示例结果数组维度与最大维度操作数一致,各维长度取操作数对应维度最大值;还举例不同形状数组的广播运算与调整方法。通用函数多维数组通用函数:执行元素级运算,返回新数组,分接收一个参数的一元、两个的二元。【学习目标】:多维数组运算数据分析pandas类库08【学习目标】
数据基础概念认知理解pandas数据类型和结构的基本概念,搭建学习的理论基础。
核心对象操作掌握掌握Series对象和DataFrame对象的基本操作方法,熟悉核心工具用法。
数据处理方法运用熟练使用pandas的相关方法,完成各类数据处理操作任务。pandas与NumPy关联pandas封装诸多NumPy模块,其对象可看作数组容器,底层为多维数组,还会扩展NumPy类型系统,支持自定义数组。本节核心学习内容主要围绕pandas的数据类型、数据结构以及数据的获取方法展开讨论学习。【学习目标】:pandas数据【学习目标】:pandas数据数据类型
数据类型转换要点pandas兼容NumPy数据类型,转pandas类型时通常能自动推断,也可显式指定dtypes参数转换类型。
数据类型查看与汇总可通过pandas对象的dtypes属性查看类型,pandas含object、int64、bool等多种数据类型。【学习目标】:pandas数据数据结构
01核心数据结构介绍pandas有Series和DataFrame两类核心数据结构,所有操作基于其对象,Series是列,DataFrame是由Series组成的表对象,对象值对应行、列索引。
02对象创建方式说明可从Python对象、NumPy数组或文件导入创建,Series类似有序字典,DataFrame可由二维数组、特定字典或Series字典转换生成。
03索引设置与修改创建时未指定index则默认0开始整数序列,DataFrame可通过index和columns参数设置行列索引,也可直接修改对象的index、columns属性。数据获取【学习目标】:pandas数据【学习目标】:pandas数据小节介绍了pandas对象的动态创建方式,在实际场景下,用来分析的数据可能是保存在其他数据源(如数据库或数据文件)中的数据,Python为这些数据源的读取提供了丰富的接口函数。本小节主要介绍如何从数据文件中读取数据,以创建pandas对象。pandas支持读取20多种格式的数据源,读取的方法以“read_*”开头命名,多数方法的参数相似。金融数据文件多为.csv、.pickle、.json、.xml等格式,对于存放在数据库中的数据,pandas也支持用SQL语句查询数据库,并将查询结果存储为DataFrame对象。本小节以read_csv()方法为例介绍读取.csv文件,并将数据存储为DataFrame对象的方法【学习目标】:pandas数据
文件读取方法说明可通过help(pd.read_csv)查看参数详情,多数参数用默认值即可,read_csv可导入.csv文件为DataFrame,还介绍了read_excel、pd.read_sql的参数与用法。
文件写入方法说明可使用df.to_csv、df.to_excel、df.to_sql分别将数据写入.csv、Excel文件或数据库表,pd.read_excel等需依赖第三方库。【学习目标】:数据处理
数据预处理概述数据预处理是数据分析前的处理环节,含检查、清洗、集成、规约、变换等,可提升数据质量,适配学习模型,提高分析质量。
Pandas预处理方法介绍利用pandas进行数据检查和选择、清洗、集成、分组变换、统计的常用操作方法。
Sklearn预处理说明sklearn也有数据变换、规约等预处理方法,其使用详见第10章相关内容。数据检查方法说明可通过head()、info()、describe()等方法了解数据列、缺失值、统计信息等,另有多种检查方法及对应说明。数据选择操作要点可通过iloc、loc等方法按位置或索引选择数据,也可按条件筛选,能得到子Series或子DataFrame对象。【学习目标】:数据处理数据检查和选择【学习目标】:数据处理数据清洗
数据质量核心作用数据质量对数据分析结果有关键影响,无高质量数据难建高质量学习模型,甚至导致模型无法工作,如回归分析模型变量不能有缺失值。
缺失值处理实操以泰坦尼克号数据集为例,先通过info()发现Age、Cabin和Embarked有缺失值,删除缺失过多的Cabin,用均值填充Age。
pandas数据清洗方法含重命名列索引、检查空值、删除行或列、去重、删除空值、填充缺失值、转换数据类型、值替换等多种方法及详细说明。【学习目标】:数据处理数据集成
数据集成概念阐释实际场景中分析数据常存于不同子集,将不同来源、格式的子集整合为一个数据集的过程即数据集成。
concat合并方法说明可合并多个Series或DataFrame对象,沿轴1合并Series得DataFrame,合并DataFrame时会按对应索引自动对齐。
merge函数使用要点pandas的merge()函数使用灵活,DataFrame也有merge()方法,默认按同名列连接,参数设置丰富。
join方法操作细节DataFrame的join()方法默认按索引等值连接,有同名列需设lsuffix和rsuffix参数,也可指定列连接。
集成方法汇总说明包含append、concat、merge、join等方法,各方法有不同的参数设置与适用场景,可实现不同需求的数据集成。【学习目标】:数据处理数据分组变换
分组统计基础内容分组统计是数据分析常用操作,代码中常用groupby表示,分组后常用操作有apply、aggregate、transform和filter。
groupby操作三阶段分为分组、按指定函数对组内成员计算、合并计算结果得到新数据集这三个阶段。
agg()方法使用要点agg()参数是每一列各组的Series对象,支持NumPy统计函数、函数名称字符串或自定义函数。apply()方法使用说明apply()灵活可返回任意类型数据,参数为函数及位置、关键字参数,但处理数据效率较低。transform()方法特性对组内数据计算后将结果赋给组内每个成员,按原索引顺序返回,形状和原数据一致。groupby常用方法汇总包含df.groupby()不同参数形式、多列分组、结合统计函数、df.apply()等多种常用方法及说明。【学习目标】:数据处理【学习目标】:数据处理数据统计
统计计算实现方式因pandas底层用NumPy,对DataFrame统计计算时,可使用NumPy统计函数,也可用对象自带统计方法。
常用统计方法说明包含describe、mean、corr等,分别实现统计汇总、均值计算、相关系数返回等功能,用法参数与NumPy一致。【学习目标】:时间索引时间索引类型及创建
01时间索引类型概述数据分析中时间是重要参数,创建时间索引很关键,pandas有DatetimeIndex、PeriodIndex和TimedeltaIndex三种时间相关索引类型。
02时间索引创建方法pandas分别对应date_range()、period_range()和timedelta_range()函数,类Pythonrange()方法,默认生成时间索引。
03时间索引示例说明示例代码用date_range()生成2023年5月18日起、间隔2小时15分钟的9个时间序列,freq取值字符串可组合。【学习目标】:时间索引工作日时间索引创建
工作日序列生成证券市场工作日交易场景可使用pandas.bdate_range函数生成默认工作日时间序列,还能通过weekmask和holidays自定义工作日与节假日。freq参数取值说明该函数freq参数有多种常用取值,涵盖工作日、日历日、周、月、季度、年及不同时间单位等各类频率,各有对应功能说明。时间索引采样转换当时间序列数据周期与分析周期不同时,可使用DataFrame.resample()和DataFrame.asfreq()函数进行采样或频率转换。时间周期偏移处理若要对数据在时间周期上进行偏移,可借助DataFrame.shift()函数来完成操作。降采样操作示例可将1min周期数据降采样到3min,以求和为聚合方式,对应有具体代码示例。升采样及缺值填充升采样获取更高频率数据会出现缺失值,可使用bfill()或ffill()方法填充,附代码及输出示例。【学习目标】:时间索引时间序列采样与偏移【学习目标】:时间索引时间索引相关方法说明
日期范围生成方法pd.date_range可设置开始、结束日期、周期数、频率等参数,返回DatetimeIndex类型数据,参数含时区、日期规范、范围包含规则等。
周期与时间差方法pd.period_range用于生成周期索引,pd.timedelta_range生成时间差索引,二者参数含开始、结束、周期数、频率等。
频率转换操作要点df.asfreq可完成时间序列频率转换,无对应时间点时可通过method或fill_val
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 昆山至尊公馆工作制度
- 普法宣传教育工作制度
- 月子中心护理工作制度
- 服务站点工作制度汇编
- 机关支部完善工作制度
- 机关马上就办工作制度
- 机要文件管理工作制度
- 村卫生室妇幼工作制度
- 村委三零创建工作制度
- 预防接种人员工作制度
- 2024年不动产登记代理人《地籍调查》考试题库大全(含真题、典型题)
- 初二【物理(北京版)】探究液体压强-学习任务单
- 德语专四作文范文
- 2024年贵州六盘水水城区公安局编外合同制留置看护人员招聘笔试参考题库附带答案详解
- 绿色建筑评价标准-最终版
- 保险客服话术大全
- 商务英语(BEC)高级阅读真题及答案
- GB/T 34855-2017洗手液
- GB/T 12470-2018埋弧焊用热强钢实心焊丝、药芯焊丝和焊丝-焊剂组合分类要求
- 加油站安全管理员安全目标责任书
- 硬笔书法:幼小衔接识字写字教学课件
评论
0/150
提交评论