欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    (2.6)--6.Python常见库Python程序设计基础.pdf

    • 资源ID:96400903       资源大小:1.13MB        全文页数:11页
    • 资源格式: PDF        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    (2.6)--6.Python常见库Python程序设计基础.pdf

    Python 常见库Python 作为一个设计优秀的程序语言,现在已广泛应用于各种领域,依靠其强大的第三方类库,Python 在各个领域都能发挥巨大的作用。下面表格中展示了部分常见库及其用途,其中我们对 numpy 和 pandas 库进行详细了解。分分类类库名称库名称库用途库用途Web框架Django开源 web 开发框架,它鼓励快速开发,并遵循 MVC 设计,我以前用过很多次,比较好用,开发周期短ActiveGrid企业级的 Web2.0 解决方案Karrigell简单的 Web 框架,自身包含了 Web 服务,py 脚本引擎和纯 python 的数据库PyDBLitewebpy一个小巧灵活的 Web 框架,虽然简单但是功能强大CherryPy基于 Python 的 Web 应用程序开发框架Pylons基于 Python 的一个极其高效和可靠的 Web 开发框架Zope开源的 Web 应用服务器TurboGears基于 Python 的 MVC 风格的 Web 应用程序框架Twisted流行的网络编程库,大型 Web 框架QuixoteWeb 开发框架科学计算Matplotlib用 Python 实现的类 matlab 的第三方库,用以绘制一些高质量的数学二维图形SciPy基于 Python 的 matlab 实现,旨在实现 matlab 的所有功能NumPy基于 Python 的科学计算第三方库,提供了矩阵,线性代数,傅立叶变换等等的解决方案GUIPyGtk基于 Python 的 GUI 程序开发 GTK+库PyQt用于 Python 的 QT 开发库WxPythonPython 下的 GUI 编程框架,与 MFC 的架构相似TkinterPython 下标准的界面编程包,因此不算是第三方库了 o(_)o其它BeautifulSoup基于 Python 的 HTML/XML 解析器,简单易用PIL基于 Python 的图像处理库,功能强大,对图形文件的格式支持广泛MySQLdb用于连接 MySQL 数据库cElementTree高性能 XML 解析库,Py2.5 应该已经包含了该模块,因此不算一个第三方库了PyGame基于 Python 的多媒体开发和游戏软件开发模块Py2exe将 python 脚本转换为 windows 上可以独立运行的可执行程序pefileWindows PE 文件解析器一、numpy 库numpy 是用于科学计算的第三方库,它是一个开源的 Python 程序库,它提供一个多维数组对象、各种派生对象(如矩阵)以及用于数组快速操作的各种函数,包括数学函数、逻辑运算、基本线性代数、基本统计操作等。使用 numpy 库可以很自然的使用数组和矩阵。1.numpy 安装方法一:安装 Anaconda。如果安装了 Anaconda 发行版,它包括 Python、numpy 库和许多其他用于科学计算和数据科学的常用包,不需要另外安装 numpy。方法二:安装 Miniconda。如果安装了 Miniconda,它只包含最基本的内容:Python和conda等,numpy库需要使用conda命令来安装,可以从defaults channels或者 conda-forge channels 安装 numpy 库。命令格式为:conda config-add channels conda-forgeconda install numpy方法三:使用 pip 安装。使用 pip 的命令格式为:pip install numpy2.numpy 数组先通过一个例子了解一下 numpy 数组的应用。【例 1】编写一个程序,计算向量和:x+y=(x0,x1,xn-1)+(y0,y1,yn-1)=(x0+y0,x1+y1,,xn-1+yn-1)=(z0,z1,zn-1)=z求解方法有两种:方法一:数据存储在 Python 的两个列表(x 和 y)中,可以使用循环对列表 x和 y 中对应元素相加,程序代码如下:n=10 x=range(n)y=range(n)z=for i in range(len(x):z.append(xi*yi)print(z)方法二:数据存储在 numpy 数组 x 和 y 中,程序代码如下:import numpy as npn=10 x=np.arange(n)y=np.arange(n)z=x+yprint(z)其中 np.arange(n)创建 numpy 数组即 ndarray 对象,该数组为一维数组,每个数组元素的值依次是 0 到 n-1 的整数,即数组元素 x0的值是 0,数组元素 x1的值是 1,数组元素 xn-1的值是 n-1。x+y 表示 numpy 数组(ndarray 对象)x 和 y 对应元素逐个进行求和运算。在 numpy 库中,numpy 数组(ndarray 对象)的所有操作,都是按照逐个元素的方式进行,而不需要使用循环实现对应元素的相应操作。对比上述两段代码可知,对数组的计算,不需要显示的循环语句,其代码更加简单、明了,使用起来更加自然。numpy 库的核心是 ndarray 对象。numpy ndarray 对象是一个 N 维数组,数组中的所有类型相同,数组中的每个元素由一个非负整数索引,索引值按元素顺序从 0 开始,与 Python 数组的索引值(或下标)规则相同。N 维数组,每个方向称为一个轴(axis),N 维则有 N 个轴,这就像二维数组,有两个轴,一个轴为行(垂直)方向,一个轴为列(水平)方向。下面是 numpy 数组的三种创建方法:首先导入 numpy 库。import numpy as np(1)使用 Python 列表、元组等进行创建-numpy.array()示例如下:d1=1,2,3,4#或者 d1=(1,2,3,4)a=np.array(d1)#将列表转换为 ndarray 数组 aarray(1,2,3,4)还可以通过嵌套列表、嵌套元组,来创建二维数组、三维数组等。示例如下:d3=1,2,3,4,5,6,7,8#列表嵌套 c=np.array(d3)#二维数组 carray(1,2,3,4,5,6,7,8)(2)使用 numpy 内部函数创建 numpy 数组zeros()函数:dtype 参数设置元素类型,元素值默认类型为 float 类型;shape参数设置数组的维度,该参数可以使用元组或列表赋值。arange()函数:arange(start,stop,step,dtype=None),根据 start 与 stop 指定的范围以及 step 设定的步长,生成一维 ndarray 对象。start 起始值,默认为 0;stop 终止值,生成的值不包含该值;step 为生成元素值的步长,默认为 1,该值可为小数;dtype 返回数组元素值的数据类型,如果没有设置,则会使用输入数据的类型。linspace()函数-创建等差数列一维数组。linspace(start,stop,num=50,endpoint=True,retstep=False,dtype=None),start 为序列的起始值;stop 为序列的终止值;num 为生成的等差数列中的元素个数,默认值为 50;endpoint 值为 Ture时,stop 值包含在数列中,反之不包含,默认是 True;retstep 如果为 True 时,生成的数组中会显示间距,反之不显示,默认值为 False;dtype 为数组元素的数据类型。(3)使用 random 模块创建数组数组创建好以后,下面是数组的索引与切片。(1)索引访问数据一维数组的每个元素都有一个索引,这个索引可以是正数,也可以是负数。如果是正数,从开始依次递增,即索引值为 0 表示第一个元素,索引值为 1 表示第 2 个元素等。如果是负数,索引从后往前计数,从最后一个元素开始计数,即索引值为-1,表示最后一个元素,索引值为-2 表示倒数第二个元素等。示例如下:a=np.arange(1,10)aarray(1,2,3,4,5,6,7,8,9)a2#第 3 个元素3 a-3#倒数第三个元素7多维数组每个轴有一个索引,这些索引用逗号分隔给出。例如,二维数组,使用行索引,列索引的结构,访问元素。(2)切片访问数据切片操作访问一定范围内的元素。切片操作返回的是一个新的一维的ndarray 数组。具体操作,使用start:stop:step的结构,其中,start 表示开始索引,默认为 0;stop 为截止的索引,切片时不包括该值;step 步长,默认为 1。示例如下:b=np.arange(1,10)barray(1,2,3,4,5,6,7,8,9)b1:5array(2,3,4,5)b:5:2array(1,3,5)b:array(1,2,3,4,5,6,7,8,9)多维数组的切片,分别对每个轴进行切片,然后用逗号隔开。二维数组,切片结构为行切片,列切片,切片返回一个新的 ndarray 数组。对于数组内元素的操作,有删除、插入、查找等方法,如下表:在 numpy 中,有一种函数称为通用函数(Universal functions),其英文简写为 ufunc。通用函数在 ndarray 数组上按元素进行运算,其输出仍为一个数组。ufunc 比 math 模块中的函数更灵活。math 模块的输入一般是标量数据,对数组进行计算时,需要使用循环对每个元素进行计算,但 numpy 中的函数输入可以是一个 ndarray 数组,使用 ndarray 数组可以避免使用循环语句。在 numpy 中,可用的 ufunc 有 60 多种,主要包括数学运算函数、三角函数、比较函数等。在这里具体介绍其中的数学函数。下表给出了 numpy 库中常用的数学运算函数的说明。另外,这里给出 numpy 库中常用的统计函数,如下表:其中参数 axis 表示轴,可选参数,默认对所有元素进行相关计算;在二维数组中,axis=0 表示行(垂直)方向,axis=1 表示列(水平)方向。二、pandas 库pandas 是 Python 中非常实用的一个数据分析库,构建在 numpy 的基础之上。pandas 库中提供了大量用于数据整理与清洗、数据分析与建模、数据可视化与制表等数据处理所需的函数和方法。pandas 主要有两种数据结构:Series 和 DataFrame,这两种数据结构可高效、灵活的处理数据分析的相关任务。【例 2】程序代码给出了几名学生某门课程的平时成绩和期末成绩汇总表,并根据汇总表进行数据访问,以及根据两种成绩计算学生的总评成绩。程序代码如下:import numpy as npimport pandas as pd#学生的平时成绩g1=np.array(90,91,88,70)#与数组 g1 对应学生的期末成绩g2=np.array(89,99,75,80)#成绩与学生姓名对应,创建 pandas 的 Series 结构数据 s1s1=pd.Series(g1,index=Mary,Alice,Peter,Mike)print(s1:n,s1)print(s1Mary:,s1Mary)s2=pd.Series(g2,index=Mary,Alice,Peter,Mike)#s1 和 s2 汇总在一起,并且加列标签,创建成绩单 dfdata=平时成绩:s1,期末成绩:s2df=pd.DataFrame(data)print(df=:n,df)#得到 series 结构的数据print(df.locAlice:n,df.locAlice)#得到 series 结构的数据print(df平时成绩:n,df平时成绩)print(df.locAlice:,平时成绩:,df.locAlice,平时成绩)代码运行结果:在代码中:s1、s2 数据和 numpy 数组 g1、g2 的区别是,多了一列姓名,每个姓名和一个数据对应,这列姓名是该数组的标签,或称为索引;带有标签的一维数组,其数据结构称为 Series 对象。df 数据,构成了像关系数据表一样的结构,有行名称和列名称df 数据是一个带有行标签和列标签的二维数组,这样的数据结构成为DataFrame 对象。s1Mary通过标签索引获取 Mary 的平时成绩;df.locAlice、df平时成绩、df.locAlice,平时成绩可通过行标签索引、列标签索引访问;DataFrame 结构上的数据,获得一行、一列或一个具体位置上的值。Series 和 DataFrame 结构的数据,都带有标签,并可用标签索引访问数据,使用时更直观更自然。

    注意事项

    本文((2.6)--6.Python常见库Python程序设计基础.pdf)为本站会员(奉***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开