- 1、本文档共96页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
数据分析与可视化;4.1NumPy、SciPy和MKL函数
4.2标量选择、切片与索引
4.3数据结构
4.4使用matplotlib进行可视化;4.1.1NumPy介绍
4.1.2Scipy介绍
4.1.3MKL函数介绍;4.1.1NumPy介绍
NumPy通用函数(ufunc):通过每个元素对ndarray进行操作的函数,支持类型转换
是接受标量输入并产生标量输出的函数的矢量化包装器
运行速度比Python函数快;importnumpyasnp
x=np.random.random(5)
print(x)
print(x+1)#对向量x在每个元素上加1
;4.1NumPy、SciPy和MKL函数;矩阵维度和重塑操作;#接下来改变变量的维度
a.shape=(3,4)
print(a)
[[1234]
[5678]
[9101112]]
shape()函数和reshape()函数的反向操作是ravel()
#ravel()的例子
a=np.array([[1,2,3,4,5,6],[7,8,9,10,11,12]])
a.ravel()
array([1,2,3,4,5,6,7,8,9,10,11,12])
;插值;向量化函数
vectorize():通过逐元素应用相同的规则,将采用标量作为参数的函数转换为采用数组作为参数的函数;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;NumPy线性代数常用函数;4.1.2SciPy介绍
SciPy:NumPy在数学、科学和工程方面的扩展,它有许多可用于线性代数、积分、插值、快速傅里叶变换、大矩阵操作、统计计算等的子包;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;解线性方程组
例:解一个有3个变量(x,y,z)的线性方程组;4.1NumPy、SciPy和MKL函数;向量化的数值导数
Python中应用向量化方法来计算导数不需要循环;4.1NumPy、SciPy和MKL函数;4.1NumPy、SciPy和MKL函数;4.1.3MKL函数介绍
MKL:提供了向量和矩阵的高性能例程,包括FFT函数和向量统计函数,可在Intel处理器上高效工作;4.2.1标量选择
从数组中选择元素的最简单方法
一维数组使用[rowindex],二维数组使用[rowindex,columnindex]等;4.2标量选择、切片与索引;4.2.2切片
数组切片与列表切片相似,但语法更简单
使用[:,:,...:]语法对数组进行切片
切片速记符号:;4.2.1标量选择
4.2.2切片
4.2.3数组索引;4.2标量选择、切片与索引;4.2标量选择、切片与索引;4.2标量选择、切片与索??;4.2.3数组索引
NumPy数组中的元素可以使用4种方法选择:标量选择、切片、数值索引和逻辑(或布尔)索引;数值索引:使用坐标来选择元素,切片表示法的替代方法
数值索引创建的数组会创建数据的副本,而切片只是数据的视图,而不是副本
可以是列表也可以是NumPy数组,并且必须包含整数数据;4.2标量选择、切片与索引;4.2标量选择、切片与索引;逻辑索引:使用逻辑来选择元素、行或列
逻辑数组与原数组大小相同,并且逻辑索引总是返回一个一维数组;4.2标量选择、切片与索引;4.2标量选择、切片与索引;4.3.1堆栈
4.3.2元组
4.3.3集合
4.3.4队列
4.3.5字典
4.3.6矩阵表示的字典
4.3.7字典树;4.3.1堆栈
堆栈:一种抽象数据类型,操作原理是后进先出
常用操作:
append()在栈顶添加项
pop()从栈顶提取项
remove()删除项;4.3数据结构;pop()函数:最有效,因为除出栈元素,其他所有元素都保留在它们的位置
但对于正整数k,当使用pop(k)删除列表的kn索引处的元素时,会移动所有后续元素以填补删除导致的空白
此操作的效率是线性的,因为移位量取决于索引k的选择;4.3.2元组
元组:类似于列表的不可变对象序列
元组为异构数据结构,列表为同
文档评论(0)