Numpy学习
2018-03-31 18:04
399 查看
创建及访问Array数组
通过python的list创建数组
通过列表list_1,使用numpy中的array方法来创建数组。这里创建了一个一维数组。
这里给array传入了一个包含两个list的列表作为参数,即表示创建了一个二维数组。
获取数组的属性
获取数组的大小
返回的结果(2,4)表示这个数组是一个2*4大小的数组(2行4列)。
获取数组中元素个数
返回了数组中一共是8个元素
获取数组中的数据类型
当数组中的元素类型不一样的时候,会取精确度最高的类型
通过numpy中的arange创建数组
arange的参数和python中range的参数类似,这样就创建了一个一维数组。第三个参数表示步进为2。
创建全零数组
只传入一个参数表示生成一个一维的全零数组,传入一个两元素列表表示生成一个二维的全零数组
创建单位数组
zeros和eye返回的都是float类型的数据。
访问数组中的元素
访问一维数组
一维数组的访问和python中列表元素访问相同,同样通过索引访问,也包含切片的功能。访问二维数组
访问二维数组也是通过索引,第一个索引表示行,第二个索引表示列,且第一行和第一列的索引都是0。二维数组切片
切片时第一个参数表示表示行的范围,第二个参数表示列的范围,结果仍为数组。
数组的运算
创建随机数组和随机数
randn产生的一位数组是符合正太分布的,randint则产生一个指定参数范围内的随机整形数字。
可以在生成随机数的时候指定一个size,表示生成一个m*n的矩阵或一维数组的长度:
对于这种一维数组,也可以重新将其生成为二维数组:
数组加减乘除
数组的加法、减法、乘法和除法就是将矩阵中对应位置元素相加减或乘或除,然后形成一个新的矩阵。这里除法的时候有一个警告,因为b中有0存在,而0不能做分母。
数组的常用函数
unique
这个函数用来去除数组中重复的元素,最后返回一个一维数组。sum
返回一个按列求和的一维数组也可以指定求某一行或列的和
a[0]表示求第一行的和,a[:,1]表示求第二列的和
max和min
max和min用于求数组中的最大值和最小值,用法类似sum矩阵创建
mat创建矩阵
创建矩阵使用numpy中的mat方法,它的参数和创建数组的array基本类似:数组转换为矩阵
将数组作为参数传递给mat,则转换成对应行列的矩阵这样的话前面创建数组的方法就可以用来较为方便的创建矩阵
矩阵运算
矩阵加法和减法
矩阵的加减法就是对应位置的元素的加减法。这里直接将上边产生的随机数组a和b转化为矩阵。
矩阵的乘法
矩阵的乘法中,A*B,要求A的行数等于B的列数。矩阵的乘法要满足左行乘右列的规则,最后形成了一个4*4的新矩阵
使用pickle序列化numpy arrary
使用pickle可以把array保存在磁盘上:导入pickle模块,创建好数组后打开一个文件,这里打开方式为wb,即“写二进制”的方式,然后通过pickle.dump指定将数组x保存到文件f中。
使用pickle.load可以将保存在文件中的数组加载回来:
使用save/savez序列化numpy arrary
生成的文件默认后缀为npy
也可以同时序列化两个数组,使用savez:
a=x,b=y相当于给两个数组打标签,然后加载保存的文件后可以通过指定标签的方式访问不同的数组。
这种相当于压缩多个数组
相关文章推荐
- 深度学习算法实践2---线性代数和Numpy的使用
- (原创)机器学习之numpy库中常用的函数介绍(一)
- Python Numpy 学习笔记(3)
- Python学习笔记(二)——NumPy
- 深度学习中常用numpy操作(3.计算)
- numpy基础学习大集合(三)
- Numpy学习笔记一、Why Numpy?
- numpy学习笔记二:numpy基础
- Numpy np.array 相关常用操作学习笔记
- Python数据分析之numpy学习(一)
- 2017.05.10回顾 numpy学习 其他python woe iv实现参考
- Numpy学习笔记之Numpy的合并与分割
- Numpy学习笔记之利用数组处理数据
- NumPy学习2:基本运算
- Numpy 学习笔记(一)
- 机器学习实战python环境搭建以及numpy和matplotlib安装遇到的各种问题(一)
- Python数据分析之numpy学习(二)
- numpy 学习笔记
- NumPy学习笔记
- numpy 模块学习记录五