pythonnumpy库介绍 目录 1.NumPy( Numeric Python) 2.numpy的引用 3.Ndarray 引入n维数组的意义 ndarray的组成 ndarray对象的属性 3.数据类型 ndarray数组的创建 adarray数组的变换 ndarray数组运算 4.索引与切片 5.随机数函数 6.统计函数 7.梯度函数 8.副本与视图 numpy线性代
目录
- 1.NumPy( Numeric Python)
- 2.numpy的引用
- 3.Ndarray
- 引入n维数组的意义
- ndarray的组成
- ndarray对象的属性
- 3.数据类型
- ndarray数组的创建
- adarray数组的变换
- ndarray数组运算
- 4.索引与切片
- 5.随机数函数
- 6.统计函数
- 7.梯度函数
- 8.副本与视图
- numpy线性代数
- 数组与标量之间的运算
- 常用numpy.linalg函数总结
1.NumPy( Numeric Python)
numpy
是一个开源的python
科学计算扩展库,主要用来处理任意维度数组和矩阵。
相同的任务,使用numpy
比直接用python
的基本数据结构更加简单高效。
它的功能:
- 包含一个强大的N维数组对象
Ndarray
- 广播功能函数
- 整合C/C++代码的工具
- 线性代数、傅里叶变换、随机数生成等功能
numpy
是scipy
,pandas
等数据处理或科学计算库的基础
2.numpy的引用
虽说别名可以省略或者更改,但尽量使用上述约定的别名
3.Ndarray
n维数组,它是一个相同数据类型的集合,以0为下标开始进行集合中元素的索引。
我们知道,python
有列表和数组此类的数据结构。
列表:数据类型可以不同(如[3, 2.4 ,‘a' ,“abc”]),数据是有序的
数组:数据类型相同(如[1,2,3,4])
集合: (如{2,4,3,5,7})数据是无序的
引入n维数组的意义
观察下列两组操作,其功能都是一样的。
import numpy as np
def pysum():
a = [1, 2, 3, 4]
b = [5, 6, 7, 8]
c = []
for i in range(len(a)):
c.append(a[i]**2+b[i]**3)
return c
def numpysum():
a = np.array([1, 2, 3, 4])
b = np.array([5, 6, 7, 8])
c = a**2+b**3
return c
print("使用列表运算的结果是:", pysum())
print("使用Numpy运算的结果是:", numpysum())
运行结果:
使用列表运算的结果是: [126, 220, 352, 528]
使用Numpy运算的结果是: [126 220 352 528]
但是很明显:
numpy
的数组对象可以去掉元素建运算所需要的循环,使一维向量更像单个数据numpy
通过设立专门的数组对象,经过优化,运算速度也相应提升
通常情况下,在科学运算中,一个维度所有数据的类型往往相同,这时,使用数组对象采用相同的数据类型,有助于节省运算时间和存储空间
ndarray的组成
- 实际的数据
- 描述这些数据的元数据(数据维度、数据类型等)
ndarray对象的属性
3.数据类型
当np.array()
不指定dtype
时,numpy
将根据数据情况关联一个dtype
类型
ndarray
支持多种数据类型的原因python
基本语法只支持整数、浮点数和复数3种类型- 科学计算涉及数据较多,对存储和性能都有较高要求
- 对元素类型精细定义,有助于
numpy
合理使用存储空间并优化性能 - 对元素类型精细定义,有助于程序员对程序规模有合理评估
ndarray数组的创建
import numpy as np
x = np.array([[1, 0], [2, 0], [3, 1]], np.int32)
print(x)
print(x.dtype)
程序输出:
[[1 0]
[2 0]
[3 1]]
int32
adarray数组的变换
ndarray数组运算
4.索引与切片
- 索引:获取数组中特定位置元素的过程
- 切片:获取数组元素子集的过程
5.随机数函数
6.统计函数
7.梯度函数
8.副本与视图
numpy线性代数
数组与标量之间的运算
常用numpy.linalg函数总结
(好家伙,numpy
内置函数太多了…)
本文标题为:python numpy库介绍


- 在centos6.4下安装python3.5 2023-09-04
- windows安装python2.7.12和pycharm2018教程 2023-09-03
- python中列表添加元素的几种方式(+、append()、ext 2022-09-02
- CentOS7 安装 Python3.6 2023-09-04
- python中defaultdict用法实例详解 2022-10-20
- Python Pandas如何获取和修改任意位置的值(at,iat,loc,iloc) 2023-08-04
- Python 保存数据的方法(4种方法) 2023-09-04
- python线程池ThreadPoolExecutor与进程池ProcessPoolExecutor 2023-09-04
- Python实现将DNA序列存储为tfr文件并读取流程介绍 2022-10-20
- Python之路-Python中的线程与进程 2023-09-04