NumPy(2)reshape,dot,flat
来源:互联网 发布:聚合数据是什么意思 编辑:程序博客网 时间:2024/05/29 04:22
保留初心,砥砺前行
NumPy官方网站
NumPy Tutorial
- ####
reshape
函数:
顾名思义,将原有的数组重新整形,变成参数中指定的形状。
import numpy as npa = np.arange(1, 20, 2)print a.reshape(2, 5)print a.reshape(2, 1, 5)
[[ 1 3 5 7 9] [11 13 15 17 19]]
[[[ 1 3 5 7 9]] [[11 13 15 17 19]]]
如下代码所示,在reshape成三维数组时,第一个参数m控制将所有数据划分为m部分,第二个参数n控制将每一块数据分别划分为n部分,最后一个参数x,表示每一个小块有x列。
import numpy as npa = np.arange(1, 21)print a.reshape(2, 2, 5)
[[[ 1 2 3 4 5] [ 6 7 8 9 10]] [[11 12 13 14 15] [16 17 18 19 20]]]
tip:在终端输出数据时,有时数据会很长,NumPy会自动将数据的中间部分变成省略号显示。如下:
[[ 0 1 2 ..., 97 98 99] [ 100 101 102 ..., 197 198 199] [ 200 201 202 ..., 297 298 299] ..., [9700 9701 9702 ..., 9797 9798 9799] [9800 9801 9802 ..., 9897 9898 9899] [9900 9901 9902 ..., 9997 9998 9999]]
为了显示出全部数据,可以添加如下代码:
np.set_printoptions(threshold='nan')
- ####
dot
函数:
数组间存在简单的加减乘法,对于乘法,我们都知道矩阵的乘法并不是普通的对应相乘,而使用*
符号产生的是对应位置相乘的结果。如果想得到矩阵相乘的结果,需要使用dot
函数,如下代码所示:
import numpy as npa = np.array([[1, 2], [2, 3]])b = np.array([[2, 2], [3, 3]])print a * b[[2 4] [6 9]]print np.dot(a, b)[[ 8 8] [13 13]]
- ####
flat
:
在遍历一维数组时,直接使用下边索引可以一次性遍历,然而当维数增加,遍历下标其实遍历的是某一维度上的数组。例如三维数组,无法直接遍历到每一个元素。如果想直接遍历到每一个元素,可以使用flat
(可以理解为要使用到数组中每一个“公寓(flat)中的元素”),如下所示:
import numpy as npb = np.array([[[2, 2], [3, 3]], [[2, 2], [3, 3]]])for _ in b: print _[[2 2] [3 3]][[2 2] [3 3]]for _ in b.flat: print _22332233
相关链接:NumPy(1)简介,基础属性,数组创建(ones,zeros,empty,arange,linespace)
相关链接:NumPy(3)full,eye,empty,random
阅读全文
0 0
- NumPy(2)reshape,dot,flat
- Python numpy函数:reshape()
- Python numpy函数:dot()
- numpy.reshape
- numpy reshape
- reshape in numpy
- Numpy reshape用法
- numpy库函数:reshape用法
- numpy array 如何reshape
- Numpy.reshape函数解释
- Numpy reshape用法
- numpy reshape函数使用
- numpy * dot multiply
- numpy中的dot()函数
- numpy dot() & tensorflow.assign()
- numpy 辨异(一) —— reshape 与 resize
- numpy.chararray.flat的使用
- numpy中reshape,multiply函数
- [Note]位置属性
- 扩大VMware虚拟机中CentOS7的硬盘空间过程记录
- Mac 下Android apk 的反编译
- NumPy(1)简介,基础属性,数组创建(ones,zeros,empty,arange,linespace)
- c++ 基础
- NumPy(2)reshape,dot,flat
- Flask实战2问答平台-完成登录注册功能
- NumPy(3)full,eye,empty,random
- 双向链表
- 如何阻止handler的消息处理
- 线程的几种状态转换
- 面试OR笔试10——小数转字符串
- 行为树的两种运行方式
- JMX 入门(三)