一、数组拆分
1.垂直拆分数组numpy.vsplit(数组,份数)->(数组片段)
2.水平拆分numpy.hsplit(数组,份数)->(数组片段)
numpy基本加减和取行操作
1.矩阵的加减操作
2.矩阵的取行、取列
此时需注意,矩阵行、列均是从0开始,取行、取列之后的返回数值也是一维数组
矩阵删除、插入、尾部添加操作(delete、insert、append)
1.矩阵删除 delete()函数
#numpy.delete(arr,obj,axis=None)
#axis 表明哪个维度的向量应该被移除
#axis 如果为None,则需要先将矩阵拉平,在删去第obj的元素
#obj 表明axis维度的哪一行(或列)应该被移除。
2.插入函数insert()
#numpy.insert(arr,obj,value,axis=None)
#value 为插入的数值
#arr 为目标向量
#obj 为目标向量的axis维度的目标位置
#axis 为想要插入的维
3.append()函数
#numpy.append(arr,values,axis=None)
#将values插入到目标arr的最后,其中values与arr应该有相同维度,具体见例子
4.np.random.choice(a, size, replace, p)
其作用是按要求生成一个一维数组
a是生成一维数组的来源,可以是int类型,可以是数组,也可以是list
size 数组的维度replace 表示从a中是否不重复抽取,默认可重复 p 给出抽取概率,默认随机
5.np.argmax(a, axis=None, out=None)
作用是返回轴的最大值的索引值
a:需要操作的数组或者矩阵,默认情况拉平成数组
axis:默认将a拉平,当axis=0对a按列取最大值索引,axis=1则对a按行取最大值索引
out:将结果写到a中
6.星号(*)的作用
列表前加星号作用是将列表解开成两个独立的参数,输入函数。
字典前加两个星号,是将字典解开成独立的元素作为形参。
7.拉平操作 ravel()和faltten()及reshape(1,-1)的区别联系(补充[None,:]操作)
8.np.prod() 计算元素乘积
默认计算矩阵所有元素的乘积,也可以通过axis计算指定轴的乘积
9.把矩阵大于或小于N的元素置M的技巧
10.numpy中的矩阵copy问题
11.np.zeros_like()
构造全零矩阵,无需指定大小
复制矩阵的维度,但是元素全是0
12.random.rand和random.rand和random.randint区别
np.random.random() 生成一个随机数
产生 0 ~ 1 之间的随机浮点数,无输入参数
np.random.uniform()
产生随机浮点数
np.random.rand() 生成均匀分布矩阵
创建一个矩阵,服从[0,1]随机分布
13.np.random.randn() 生成正太分布矩阵
14.np.randm.randint()
生成离散均匀分布的整数值组成的矩阵
numpy.random.randint(low,high=None,size=None,dtype)
生成半开半闭区间[low, high)上离散均匀分布的整数值,未给出high时,区间变为[0, low)
15.python 断言 assert
16.乘法之间的区别
星号( * ) 和 .dot 和 np.multiply 的区别联系
A * B 表示 A 和 B 的对应元素相乘,其中 A 和 B 大小一致
np.multiply 与星号用法一致,均表示对应元素相乘
而 .dot 是矩阵运算中的点乘, A 的列数需要等于 B 的行数。
17.numpy.empty() 创建指定形状和数据类型且未初始化的数组
18.np.meshgrid() 快速生成网格
19.np.hstack() 和 np.vstack() 用于堆叠矩阵
20…numpy 取整
np.round 和 np.around 一致,均是四舍五入运算,默认取整,可通过 decimals 调整小数位数
np.floor 是向下取整操作
21.np.newaxis 在特定位置增加一个维度
22.python 广播机制
23.numpy.transpose()转置
transpose()是以交换维度的方式进行转置。如
numpy 中双冒号的用法
numpy 中 ndarray 对象内容可以索引或切片来访问和修改。可以通过 start:stop:step 来进行切片操作,如下
而双冒号实则是两个冒号之间缺省了必要的值,它省略的是 stop 值,那么 stop 值就默认尾部。如下