文章目录
- 一、Numpy概述
- 1.优势
- 2.numpy历史
- 3.Numpy的核心:多维数组
- 4.numpy基础
- 4.1 ndarray数组
- 4.2 内存中的ndarray对象
一、Numpy概述
1.优势
- Numpy(Nummerical Python),补充了Python语言所欠缺的数值计算能力;
- Numpy是其它数据分析及机器学习库的底层库;
- Numpy完全标准的C语言实现,运行效率充分优化(Python 1989年出现,1991年发布);
- Numpy开源免费。
2.numpy历史
- 1995年,Numeric,Python语言数值计算扩充;
- 2001年,Scipy->Numarray,多维数组运算;
- 2005年,Numeric+Numarray->Numpy。
- 2006年,Numpy脱离Scipy成为独立的项目。
3.Numpy的核心:多维数组
- 代码简洁:减少Python代码中的循环
- 底层实现: 厚内核©+薄接口(Python),保证性能.
4.numpy基础
4.1 ndarray数组
用np.ndarray类的对象表示n维数组
import numpy as np
ary = np.array([1, 2, 3, 4, 5, 6])
print(type(ary))
4.2 内存中的ndarray对象
元数据(metadata)
存储对目标数组的描述信息,如: ndim、shape、dtype、data等.
实际数据
完整的数组数据
将实际数据与元数据分开存放,一方面提高了内存空间的使用效率另一方面减少对实际数据的访问频率,提高性能。
ndarray数组对象的特点
- Numpy数组是同质数组,即所有元素的数据类型必须相同
- Numpy数组的下标从0开始,最后一个元素的下标为数组长度减1
ndarray数组对象的特点 - Numpy数组是同质数组,即所有元素的数据类型必须相同
- Numpy数组的下标从0开始,最后一个元素的下标为数组长度-1