版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章Python常用机器学习库
3.2Pandas
Pandas(PythonDataAnalysisLibrary)是Python的一个数据分析包,是基于NumPy的一种工具,为了解决数据分析任务而创建的。Pandas使用强大的数据结构,提供高性能的数据操作和分析工具,能够高效分析数据。Pandas主要处理以下三种数据结构:(1)Series:一维数组,与NumPy的一维ndarray类似。数据结构接近List列表,数据元素可以是不同的数据类型。(2)DataFrame:二维数据结构。DataFrame可以理解成Series的容器,其内部的每项元素都可以看作一个Series。(3)Panel:三维数组,可以理解为DataFrame的容器,其内部的每项元素都可以看作一个DataFrame。这些数据结都是构建在NumPy数组的基础之上,运算速度很快。3.2.1Series数据结构
由一组数据以及一组与之相关的数据标签(即索引)组成。1.创建Series对象使用函数:pd.Series(data,index)data表示数据值index是索引,缺省情况下是0到N-1(N为数据的长度)的整数型索引。访问Series对象成员可以用索引编号,也可以按索引名。【例3.29】创建一个Series对象。importpandasaspds=pd.Series([1,3,5,9,6,8])print(s)【例3.30】为一个地理位置数据创建Series对象。importpandasaspd#使用列表创建,索引值为默认值。print('--------列表创建series----------')s1=pd.Series([1,1,1,1,1])print(s1)print('--------字典创建series----------')#使用字典创建,索引值为字典的key值s2=pd.Series({'Longitude':39,'Latitude':116,'Temperature':23})print('Firstvalueins2:',s2['Longitude'])print('--------用序列作series索引----------')#使用range函数生成的迭代序列设置索引值s3=pd.Series([3.4,0.8,2.1,0.3,1.5],range(5,10))print('Firstvalueins3:',s3[5])2.访问Series数据对象1)修改数据可以通过赋值操作直接修改Series对象成员的值,还可以为多个对象成员批量修改数据。2)按条件表达式筛选数据3)增加对象成员两个Series对象可以通过append函数进行拼接,从而产生一个新Series对象。【例3.33】为s2添加一项湿度数据。stiny=pd.Series({'humidity':84})s4=s2.append(stiny)4)删除对象成员可以通过drop函数删除对象成员。3.2.2DataFrame对象
DataFrame是一个表格型的数据结构。列索引(columns)对应字段名,行索引(index)对应行号,值(values)是一个二维数组。每一列表示一个独立的属性,各个列的数据类型(数值、字符串、布尔值等)可以不同。DataFrame既有行索引也有列索引,所以DataFrame也可以看成是Series的容器。1.创建DataFrame对象构建DataFrame的办法有很多,基本方法是使用DataFrame()函数构造,格式如下:DataFrame([data,index,columns,dtype,copy])【例】:1)从字典构建DataFrame2)从数组创建Dataframe3)从csv文件中读取数据到DataFrame2.访问DataFrame对象可以通过索引对DataFrame进行访问,可以获取其中的一个或多个行和/或列。3.修改DataFrame数据1)修改数据通过赋值语句修改数据,可以修改指定行、列的数据,还可以把要修改的数据查询筛选出来,或重新赋值。2)增加列DataFrame对象可以添加新的列,通过赋值语句赋值时,只要列索引名不存在,就添加新列,否则就修改列值,这与字典的特性相似。3)合并添加数据DataFrame对象可以增加新列,如果需要增加几行数据,需要将数据存入一个新DataFrame对象,然后将两个DataFrame对象进行合并。【例】见示例。4)删除DataFrame对象的数据Drop函数可以按行列删除数据,drop函数基本格式:<DataFrame对象>.drop(索引值或索引列表,axis=0,inplace=False……)主要参数:axis:默认为0,为行索引值或列索引列表;值为0表示删除行,值为1表示删除列。inplace:逻辑型,表示操作是否对原数据生效。默认为False,产生新对象,原DataFrame对象内容不变。【例】见示例。4.汇总和描述性统计计算Pandas的Serise对象和DataFrame对象都继承了NumPy的统计函数,拥有常用的数学和统计方法,可以对一列或多列数据进行统计分析。【例】见示例。函数名功能说明count统计数据值的数量,不包括NA值。describe对Series、DataFrame的列计算汇总统计。min,max计算最小值、最大值argmin,argmax计算最小值、最大值的索引位置idxmin,idxmax计算最小值、最大值的索引值sum计算总和mean计算平均值median返回中位数var计算样本值的方差std计算样本值的标准差cumsum计算样本值的累计和diff计算一阶差分常用的描述和汇总统计函数Pandas基于NumPy模块,但需要注意的是,两个模块求方差的方法略有区别。比较【例3.46】、【例3.47】说明*:
NumPy的std()函数
和Pandas的std()
函数的默认参数ddof不同。ddof参数表示标准偏差类型,NumPy中ddof默认是0,计算的是总体标准偏差;在Pandas中ddof的值默认是1,计算的是样本标准偏差。【3.48】综合示例——dataframe分词。在文本处理中,分词是一项基本任务,能够表达内容相关性、提取页面关键词、主题标签等。下面使用dataframe,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026山东事业单位统考临沂市郯城县招聘综合类岗位29人备考题库及答案详解(考点梳理)
- 2026云南昭通市水富市文化馆城镇公益性岗位人员招聘1人备考题库(含答案详解)
- 2026北京北化化学科技有限公司招聘15人备考题库及一套完整答案详解
- 2026北京航空航天大学计算机学院聘用编高级研发工程师F岗招聘1人备考题库及答案详解(夺冠系列)
- 2026安徽亳州市蒙城县县直幼儿园面向农村学校选调教师55人备考题库及答案详解参考
- 2026安徽合肥国家实验室技术支撑岗位招聘2人备考题库及答案详解(夺冠系列)
- 2025河南商丘市梁园区消防救援大队政府专职消防员招录10人备考题库及答案详解一套
- 淄博2025年山东淄博周村区事业单位招聘教师9人笔试历年参考题库附带答案详解
- 2026山东事业单位统考济南钢城区招聘初级综合类岗位45人备考题库及答案详解(考点梳理)
- 河南河南省疾病预防控制中心河南省预防医学科学院2025年招聘11人笔试历年参考题库附带答案详解
- 2024年水合肼行业发展现状分析:水合肼市场需求量约为11.47万吨
- 肺炎性假瘤误诊为肺癌的HRCT表现及浅析
- (正式版)JBT 14933-2024 机械式停车设备 检验与试验规范
- 幼儿园劳动教育计划及实施
- 新人教版五年级小学数学全册奥数(含答案)
- 志愿服务证明(多模板)
- 术后肠麻痹学习课件
- 淋膜作业标准指导书
- 顶管施工方案非开挖电缆管道专项施工方案
- XX小学传统体育游戏集锦
- GB/T 33091-2016聚氨酯筛板
评论
0/150
提交评论