维度:一组数据的组织形式
一维数据:采用线性组织(列表有序,集合无序)
列表和数组:列表中数据类型能够不一样,而数组数据类型必须相同
二维数据: 一维数据的组合形式,表格(列表)
多维数据由一维或者二维数据扩展而成(列表)
高维数据(字典类型或数据表示格式)python
一个强大的N维数组对象 ndarray
引用:import numpy as np
web
ndarray在程序中别名就是array
例: 计算A^2 + b^3 ,其中a和b是一维数组算法
#常规算法 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] ** 3) print(c[i], end=" ")
#使用ndarry数组对象 import numpy as np a = np.array([0, 1, 2, 3, 4]) b = np.array([9, 8, 7, 6, 5]) c = a ** 2 + b ** 3 for i in range(len(c)): print(c[i], end=" ")
数组对象能够去掉元素间运算所须要的循环,使一维向量更像单个数据
numpy底层使用c完成,运算大规模数据能够更快
数组对象采用相同的数据类型,有助于节省运算和存储空间
数组
一、从python中的列表,元组等类型建立ndarray数组
二、使用Numpy中函数建立ndarray数组app
三、使用Numpy中其余函数建立ndarray数组
svg
new_a = a.astype(new_type)
astype()方法必定会建立一个新的数组(原始数据的一个拷贝),即两个类型一致函数
Is = a.tolist()
ui
注意: 切片的时候区间是左闭右开区间spa
import numpy as np a = np.array([0, 1, 2, 3, 4]) #索引 print(a[2]) #切片 print(a[1 : 4 : 2])
import numpy as np a = np.arange(24).reshape(2, 3, 4) #索引 print(a[1][2][3]) print(a[-1][-2][-3]) #每个维度一个索引值,逗号分隔 print(a[1, 2, 3]) print(a[-1, -2, -3]) #切片 print(a[:, 1, -3]) print(a[:, 1 : 3, :]) #步长为2 print(a[:, :, ::2])
一、数组与标量之间的运算
······数组与标量之间的运算做用于数组每个元素3d
import numpy as np a = np.arange(24).reshape(2, 3, 4) #计算平均值 print(a.mean()) #与标量进行运算 print(a / a.mean())