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 c

print(pysum())

方法2:

import numpy as np

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

print(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数据分析课程,收获良多。以上是作者的学习笔记。

  • 25
    点赞
  • 185
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值