numpy菜鸟教程,numpy使用手册

本讲主要介绍对numpy库和numpy库的N维数组对象:ndarray的基本了解。更多内容请看numpy入门详细教程(二)

numpy:

NumPy是一个开源的Python科学计算基础库,包含:
• 一个强大的N维数组对象 ndarray
• 广播功能函数
• 整合C/C++/Fortran代码的工具
• 线性代数、傅里叶变换、随机数生成等功能
NumPy是SciPy、Pandas等数据处理或科学计算库的基础

numpy的引用

import numpy as np

np是numpy模块的别名,尽管别名可以省略或更改,建议使用上述约定俗成的别名

numpy的N维数组对象:ndarray

Python已有列表类型,为什么需要一个数组对象(类型)?
例:计算 A 2 +B 3 ,其中,A和B是一维数组。

方法1:

def pysum(): a = [0, 1, 2, 3, 4,] b = [9, 8, 7, 6, 5,] c = [] for i in range(len(a)): c.append(a[i]**2 + b[i]**2) return cprint(pysum())

方法2:

import numpy as npdef npsum(): a = np.array([0, 1, 2, 3, 4,]) b = np.array([9, 8, 7, 6, 5,]) c = a**2 + b**2 return cprint(npsum())

对比方法1和方法2,我们可以得到:

• 数组对象可以去掉元素间运算所需的循环,使一维向量更像单个数据
• 设置专门的数组对象,经过优化,可以提升这类应用的运算速度
观察:科学计算中,一个维度所有数据的类型往往相同
•数组对象采用相同的数据类型,有助于节省运算和存储空间

ndarray是一个多维数组对象,由两部分构成:
• 实际的数据
• 描述这些数据的元数据(数据维度、数据类型等)
ndarray数组一般要求所有元素类型相同(同质),数组下标从0开始

ndarry实例

ndarry在程序中的别名是:array,np.array()表示生成一个ndarray数组

如上:np.array()输出成[ ]形式,元素由空格分割

ndarray对象的属性:

轴(axis):保存数据的维度;秩(rank):轴的数量

实例:

ndarray数组的元素类型:

ndarray为什么要支持这么多种元素类型?
对比:Python语法仅支持整数、浮点数和复数3种类型
• 科学计算涉及数据较多,对存储和性能都有较高要求
• 对元素类型精细定义,有助于NumPy合理使用存储空间并优化性能
• 对元素类型精细定义,有助于程序员对程序规模有合理评估

非同质的ndarray对象:

非同质的情况下,数组的各种属性已发生变化,与同质情况不同,不必去深究它。

非同质ndarray对象无法有效发挥NumPy优势,尽量避免使用

更多内容请看numpy入门详细教程(二)

注:作者在慕课上跟随嵩天老师学习python数据分析课程,收获良多。以上是作者的学习笔记。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注