一、数组拆分 1.垂直拆分数组numpy.vsplit(数组,份数)->(数组片段) ![在这里插入图片描述](https://img-blog.csdnimg.cn/da80ca04e64e49eda913b6ecba7ded47.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAbTBfNTM5NTM2NDA=,size_15,color_FFFFFF,t_70,g_se,x_16#pic_center)
2.水平拆分numpy.hsplit(数组,份数)->(数组片段) ![代码截图](https://img-blog.csdnimg.cn/9326c5a55dee4628913f6cd67946aabd.png) ![在这里插入图片描述](https://img-blog.csdnimg.cn/3776ead49c69462db8f10a6270d0ac9b.png) numpy基本加减和取行操作 1.矩阵的加减操作 ![在这里插入图片描述](https://img-blog.csdnimg.cn/b622f9fbb7fc4498b828929fb6fbbede.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAbTBfNTM5NTM2NDA=,size_17,color_FFFFFF,t_70,g_se,x_16#pic_center) 2.矩阵的取行、取列![在这里插入图片描述](https://img-blog.csdnimg.cn/6cd6c6c156444920a83232e442bdea49.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAbTBfNTM5NTM2NDA=,size_15,color_FFFFFF,t_70,g_se,x_16#pic_center) 此时需注意,矩阵行、列均是从0开始,取行、取列之后的返回数值也是一维数组
矩阵删除、插入、尾部添加操作(delete、insert、append)
1.矩阵删除 delete()函数 #numpy.delete(arr,obj,axis=None) #axis 表明哪个维度的向量应该被移除 #axis 如果为None,则需要先将矩阵拉平,在删去第obj的元素 #obj 表明axis维度的哪一行(或列)应该被移除。
![请添加图片描述](https://img-blog.csdnimg.cn/4950f6ba4b774c2992234b4998277be5.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAbTBfNTM5NTM2NDA=,size_12,color_FFFFFF,t_70,g_se,x_16) 2.插入函数insert() #numpy.insert(arr,obj,value,axis=None) #value 为插入的数值 #arr 为目标向量 #obj 为目标向量的axis维度的目标位置 #axis 为想要插入的维 ![在这里插入图片描述](https://img-blog.csdnimg.cn/ad8f4442d511453ebdafe3a0545e9f9b.jpg?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAbTBfNTM5NTM2NDA=,size_12,color_FFFFFF,t_70,g_se,x_16#pic_center)
3.append()函数 #numpy.append(arr,values,axis=None) #将values插入到目标arr的最后,其中values与arr应该有相同维度,具体见例子![请添加图片描述](https://img-blog.csdnimg.cn/ed063b829cc74520b84a62fa41b9e6ec.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_19,color_FFFFFF,t_70,g_se,x_16) 4.np.random.choice(a, size, replace, p) 其作用是按要求生成一个一维数组 a是生成一维数组的来源,可以是int类型,可以是数组,也可以是list size 数组的维度replace 表示从a中是否不重复抽取,默认可重复 p 给出抽取概率,默认随机 ![请添加图片描述](https://img-blog.csdnimg.cn/6b68d03962d44640b88089487d051e79.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_20,color_FFFFFF,t_70,g_se,x_16) 5.np.argmax(a, axis=None, out=None) 作用是返回轴的最大值的索引值 a:需要操作的数组或者矩阵,默认情况拉平成数组 axis:默认将a拉平,当axis=0对a按列取最大值索引,axis=1则对a按行取最大值索引 out:将结果写到a中![请添加图片描述](https://img-blog.csdnimg.cn/501a0156139440b8b7e62d430fa181db.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_16,color_FFFFFF,t_70,g_se,x_16) 6.星号(*)的作用 列表前加星号作用是将列表解开成两个独立的参数,输入函数。 字典前加两个星号,是将字典解开成独立的元素作为形参。 ![请添加图片描述](https://img-blog.csdnimg.cn/70aaf916a83c40dd8da83c7ab1487f49.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_20,color_FFFFFF,t_70,g_se,x_16) 7.拉平操作 ravel()和faltten()及reshape(1,-1)的区别联系(补充[None,:]操作) ![请添加图片描述](https://img-blog.csdnimg.cn/96d077d34a7c49faab5b3b3195c4f42b.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_10,color_FFFFFF,t_70,g_se,x_16) 8.np.prod() 计算元素乘积 默认计算矩阵所有元素的乘积,也可以通过axis计算指定轴的乘积 ![请添加图片描述](https://img-blog.csdnimg.cn/741a805d3f514a72af3574934710a194.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_14,color_FFFFFF,t_70,g_se,x_16) 9.把矩阵大于或小于N的元素置M的技巧 ![请添加图片描述](https://img-blog.csdnimg.cn/7a30218b845e493f9e909f68b151046d.png) 10.numpy中的矩阵copy问题 ![在这里插入图片描述](https://img-blog.csdnimg.cn/ad097d453fb045189dcb348613094f80.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_13,color_FFFFFF,t_70,g_se,x_16) 11.np.zeros_like() 构造全零矩阵,无需指定大小 复制矩阵的维度,但是元素全是0 ![在这里插入图片描述](https://img-blog.csdnimg.cn/805659ff195946538e48c801df9ae9a0.png) 12.random.rand和random.rand和random.randint区别 np.random.random() 生成一个随机数 产生 0 ~ 1 之间的随机浮点数,无输入参数
np.random.uniform()
产生随机浮点数 np.random.rand() 生成均匀分布矩阵 创建一个矩阵,服从[0,1]随机分布 ![在这里插入图片描述](https://img-blog.csdnimg.cn/7c1312dce48849f7a622c8b410dd5806.png) 13.np.random.randn() 生成正太分布矩阵 ![在这里插入图片描述](https://img-blog.csdnimg.cn/7ca892a57e1d4f7f8d5f6fe819953d72.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_20,color_FFFFFF,t_70,g_se,x_16) 14.np.randm.randint() 生成离散均匀分布的整数值组成的矩阵 numpy.random.randint(low,high=None,size=None,dtype) 生成半开半闭区间[low, high)上离散均匀分布的整数值,未给出high时,区间变为[0, low)
![在这里插入图片描述](https://img-blog.csdnimg.cn/dde9b1dd6e6c49dca26eba7b582bd21a.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_18,color_FFFFFF,t_70,g_se,x_16) 15.python 断言 assert ![在这里插入图片描述](https://img-blog.csdnimg.cn/704f72d3797e433cb4023cda75a36c93.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_20,color_FFFFFF,t_70,g_se,x_16) 16.乘法之间的区别 星号( * ) 和 .dot 和 np.multiply 的区别联系 A * B 表示 A 和 B 的对应元素相乘,其中 A 和 B 大小一致 np.multiply 与星号用法一致,均表示对应元素相乘 而 .dot 是矩阵运算中的点乘, A 的列数需要等于 B 的行数。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/fde12b264bf04bebbb6d543743da01b7.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_20,color_FFFFFF,t_70,g_se,x_16) 17.numpy.empty() 创建指定形状和数据类型且未初始化的数组 ![在这里插入图片描述](https://img-blog.csdnimg.cn/b98df1c79e784c13afdaa00d2fdf1258.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_17,color_FFFFFF,t_70,g_se,x_16) 18.np.meshgrid() 快速生成网格 ![在这里插入图片描述](https://img-blog.csdnimg.cn/b78ab7ce47cf4506902cbd93ad2c3bb7.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_12,color_FFFFFF,t_70,g_se,x_16) 19.np.hstack() 和 np.vstack() 用于堆叠矩阵 ![在这里插入图片描述](https://img-blog.csdnimg.cn/d1b7153af0874723b40e491d065ef343.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_15,color_FFFFFF,t_70,g_se,x_16) 20…numpy 取整 np.round 和 np.around 一致,均是四舍五入运算,默认取整,可通过 decimals 调整小数位数 np.floor 是向下取整操作 ![在这里插入图片描述](https://img-blog.csdnimg.cn/8f9ce8beb64f44a5bd81ec080a776a38.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_14,color_FFFFFF,t_70,g_se,x_16)
21.np.newaxis 在特定位置增加一个维度 ![在这里插入图片描述](https://img-blog.csdnimg.cn/c9b98bdb72624f948260fd4879a8fae7.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_13,color_FFFFFF,t_70,g_se,x_16) 22.python 广播机制 ![在这里插入图片描述](https://img-blog.csdnimg.cn/9289d40c2e074076a2779dd696cf2149.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_18,color_FFFFFF,t_70,g_se,x_16)
23.numpy.transpose()转置 transpose()是以交换维度的方式进行转置。如 ![在这里插入图片描述](https://img-blog.csdnimg.cn/27b4026e13ee4d15b2f80cd8dd3dd9bf.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/79b3de87f0934f95a4f2b2ed238f286b.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_13,color_FFFFFF,t_70,g_se,x_16) numpy 中双冒号的用法 numpy 中 ndarray 对象内容可以索引或切片来访问和修改。可以通过 start:stop:step 来进行切片操作,如下 ![在这里插入图片描述](https://img-blog.csdnimg.cn/39571a8c6aa842e0b88b555416384995.png) 而双冒号实则是两个冒号之间缺省了必要的值,它省略的是 stop 值,那么 stop 值就默认尾部。如下 ![在这里插入图片描述](https://img-blog.csdnimg.cn/6a03e3c1d54a42b4aaa03b8c7855f5db.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBASHlwZXJXVFM=,size_14,color_FFFFFF,t_70,g_se,x_16)
|