好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Python实战之数据分析与处理PPT课件(第9章)第四章Pandas入门.pptx

95页
  • 卖家[上传人]:sat****105
  • 文档编号:299089498
  • 上传时间:2022-05-27
  • 文档格式:PPTX
  • 文档大小:210.04KB
  • / 95 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第三部分 数据处理法宝Pandas “Python快乐学习班”的学员来到了“Pandas数据展览中心”这是一个包含数据的展览中心,在这里可以看到不同数据的构造与变换,不同的数学公式可以通过程序被展现出来第4章 Pandas入门 在进入“Pandas数据展览中心”之前,应先了解什么是Pandas4.1 Pandas简介Pandas是一款开放源码的BSD许可的Python库,为Python编程语言提供了高性能、易于使用的数据结构和数据分析工具Pandas的应用领域非常广泛,包括智能制造、金融、经济、统计、分析、医学等学术和商业领域本节主要介绍Python Pandas的各种功能以及如何在实践中使用它们Pandas是一个开放源码的Python库,它使用强大的数据结构提供高性能的数据操作和分析工具Pandas这个名字是从Panel Data多维数据的计量经济学(an Econometrics from Multidimensional Data)简化而来的2008年,为了满足高性能、灵活的数据分析工具需求,开发商Wes McKinney开始开发Pandas在Pandas出现之前,Python主要用于数据迁移和准备,对数据分析的贡献很小。

      而Pandas主要用于数据分析使用Pandas可以完成数据处理和分析的加载、准备、操作、模型与分析5个典型步骤,而不管数据的来源Pandas的特点主要包括以下几点1)快速高效的DataFrame对象,具有默认和自定义的索引2)将数据从不同文件格式加载到内存中的数据对象工具3)对丢失数据的数据对齐和综合处理4)重组和摆动日期集5)是基于标签的切片、索引和大数据集的子集6)可以删除或插入来自数据结构的列7)按数据分组进行聚合和转换8)高性能合并和数据加入9)时间序列功能4.2 Pandas安装及数据结构标准的Python发行版并没有将Pandas模块捆绑在一起发布安装Pandas模块的一个轻量级的替代方法是,使用流行的Python包安装程序pip安装Pandas使用pip安装Pandas的语句如下:pip install pandas使用pip安装Pandas是最简单、最流行的方法,本书只介绍这种安装方式,有一些用户喜欢使用Anaconda,有需要的读者可以自己查找相关资料进行安装,包括在Linux和Mac等操作系统下的安装Pandas处理包含3个主要的数据结构:系列(Series)、数据帧(DataFrame)、面板(Panel)。

      这些数据结构都构建在NumPy数组之上,所以它们都很快在Pandas中,较高维数据结构是其较低维数据结构的容器例如,DataFrame是Series的容器,Panel是DataFrame的容器Pandas数据结构如下表所示构建和处理两个或多个多维数组是一项烦琐的任务,用户在编写函数时要考虑数据集的方向但是,使用Pandas数据结构会减少用户的思考例如,使用表格数据(DataFrame),在语义上用于考虑索引(行)和列,而不是轴0和轴1数据结构维 数描 述系列11D标记均匀数组,大小不变数据帧2一般2D标记,大小可变的表结构与潜在的异质类型的列面板3一般3D标记,大小可变数组除了系列是大小不变的,其余Pandas数据结构的值的大小都是可变的在Pandas中,DataFrame被广泛使用,是最重要的数据结构之一面板使用比较少系列是具有均匀数据的一维数组结构,具有均匀数据、尺寸大小不变、数据的值可变等特征数据帧是一个具有异构数据的二维数组,具有异构数据、大小可变、数据可变等特征面板是具有异构数据的三维数据结构,所以在图形表示中很难表示面板但是一个面板可以说明为DataFrame的容器面板具有异构数据、大小可变、数据可变等特点。

      4.3 系列系列是能够保存任何类型的数据(整数、字符串、浮点数、Python对象等)的一维标记数组轴标签统称为索引Pandas系列(Series)的创建语法如下:pandas.Series( data, index, dtype, copy)其参数说明如下data:数据可以采取各种形式,如ndarray、list、constantsindex:索引值必须是唯一的和散列的,与数据的长度相同如果没有索引被传递则默认为np.arange(n)dtype:dtype用于指定数据类型如果没有,则将自动推断数据类型copy:是否复制数据,默认为False4.3.1 创建空系列创建系列的一个最基本操作就是创建一个空系列创建空系列的示例代码如(empty_sr_1.py)4.3.2 由ndarray创建系列如果数据是ndarray,则传递的索引必须具有相同的长度如果没有传递索引值,那么默认的索引将是范围(n),其中,n是数组长度,形如0,1,2,3, range(len(array)-1 -1具体示例如(ndarray_sr_1.py)4.3.3 由字典创建系列字典(dict)可以作为输入传递,如果没有指定索引,则按排序顺序取得字典键以构造索引。

      如果传递了索引,则索引中与标签对应的数据中的值将被拉出具体示例如(dict_sr_1.py)使用字典创建系列时,也可以自定义index参数值具体示例如(dict_sr_2.py)4.3.4 使用标量创建系列如果数据是标量值,则必须提供索引将重复该值以匹配索引的长度具体示例如(dict_sr_2.py)4.3.5 从系列中访问数据系列中的数据可以使用类似于访问ndarray中的数据进行访问例如,检索第一个元素,示例代码如(point_sr_1.py)系列中可以支持检索前面指定个数元素如果使用两个参数,则为检索这两个参数索引之间的元素(不包括停止索引)示例代码如(point_sr_2.py)系列中也支持检索后面指定个数元素,示例代码如(point_sr_3.py)4.3.6 使用标签检索数据一个系列就像一个固定大小的字典,可以通过索引标签获取和设置值例如,可以使用索引标签值检索单个元素,示例代码如(index_sr_1.py)可以使用索引标签值列表检索多个元素,示例代码如(index_sr_2.py)4.4 数据帧数据帧是二维数据结构,即数据以行和列的表格方式排列数据帧的功能特点主要包括以下几点。

      1)潜在的列是不同的类型2)大小可变3)标记轴(行和列)4)可以对行和列执行算术运算Pandas数据帧(DataFrame)的创建语法如下:pandas.DataFrame(data, index, columns, dtype, copy)其参数说明如下data:数据可以采取各种形式,如ndarray、list、constantsindex:索引值必须是唯一的和散列的,与数据的长度相同如果没有索引被传递则默认为np.arange(n)dtype:dtype用于指定数据类型如果没有,将自动推断数据类型copy:是否复制数据,默认为FalsePandas数据帧可以使用各种输入创建,如列表、字典、系列、Numpy ndarrays等,下面具体介绍数据帧的各种创建方式4.4.1 创建空数据帧创建数据帧的最基本操作就是创建一个空的数据帧创建空数据帧的示例代码如(empty_df_1.py)4.4.2 使用列表创建数据帧可以使用单个列表或嵌套列表创建数据帧使用单个列表创建数据帧的示例代码如(list_df_1.py)使用嵌套列表创建数据帧的示例代码如(list_df_2.py)使用嵌套列表并指定dtype类型创建数据帧的示例代码如(list_df_3.py)。

      4.4.3 使用ndarrays/Lists的字典创建数据帧所有的ndarrays必须具有相同的长度如果传递了索引(index),则索引的长度应等于数组的长度如果没有传递索引,则默认情况下,索引将为range(n),其中,n为数组长度示例代码如(nd_ls_df_1.py)可以使用数组创建子定义索引的数据帧,示例代码如(nd_ls_df_2.py)4.4.4 使用字典列表创建数据帧字典列表可作为输入数据用来创建数据帧,字典键默认为列名通过传递字典列表创建数据帧的示例代码如(dict_list_df_1.py)通过传递字典列表和行索引创建数据帧的示例代码如(dict_list_df_2.py)使用字典、行索引和列索引列表创建数据帧的示例代码如(dict_list_df_3.py)4.4.5 使用系列的字典创建数据帧字典的系列可以传递以形成一个数据帧,所得到的索引是传递通过的所有系列索引的并集示例代码如(sr_dict_df_1.py)4.4.6 列选择从数据帧中选择一列的示例代码如(choice_df_1.py)4.4.7 列添加使用列添加,可以向现有数据帧添加新列示例代码如(add_df_1.py)。

      4.4.8 列删除使用列删除,可以从数据帧中删除或弹出一列示例代码如(delete_df_1.py)4.4.9 行选择、添加和删除可以通过将行标签传递给loc()函数选择行示例代码如(row_df_1.py)可以通过将整数位置传递给iloc()函数选择行示例代码如(row_df_2.py)4.4.10 行切片可以使用运算符选择多行示例代码如(row_slice_df_1.py)可以使用append()函数将新行添加到DataFrame中示例代码如(row_slice_df_2.py)可以使用索引标签从DataFrame中删除列或删除行如果标签重复,则会删除多行示例代码如(row_slice_df_3.py)4.5 面板面板是3D容器的数据面板数据一词来源于计量经济学,部分源于名称Pandas-pan(el)-da(ta)-s轴(axis)旨在给出描述涉及面板数据的操作的一些语义,具体如下 items:axis 0,每个项目对应于内部包含的数据帧major_axis:axis 1,每个数据帧的索引(行)minor_axis:axis 2,每个数据帧的列创建面板(Panel)的语法如下:pandas.Panel(data, items, major_axis, minor_axis, dtype, copy)其参数说明如下。

      data:数据可以采取各种形式,如ndarray、series、map、lists、dict、constant和另一个数据帧(DataFrame)items:axis=0major_axis:axis=1minor_axis:axis=2dtype:每列的数据类型copy:复制数据,默认为False面板有多种创建方式,如从ndarrays创建、从DataFrames的dict创建下面分别进行介绍需要注意的是,面板(Panel)在Pandas未来的版本中可能会被删除4.5.1 面板创建从3D ndarray创建面板的示例代码如(panel_create_1.py)从DataFrame对象的dict创建面板的示例代码如(panel_create_2.py)创建空面板的示例代码如(panel_create_3.py)4.5.2 数据选择可以使用items、major_axis、minor_axis等方式从面板中选择数据使用items从面板中选择数据的示例代码如(items_1.py)使用panel.major_axis(index)方法访问数据的示例代码如(major_axis_1.py)使用panel.minor_axis(index)方法访问数据的示例代码如(minor_axis_1.py)。

      4.6 基本功能上面讲解了3种Pandas数据结构以及如何创建下面主要关注数据帧对象,因为它在实时数据处理中非常重要,本节继续讨论数据帧的其他数据结构下表列举了DataFrame基本功能的重要属性。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.