Python深度学习
创建数组
标准安装的Python中用列表(list)保存一组值,可以用来当作数组使用,不过由于列表的元素可以是任何对象,因此列表中所保存的是对象的指针。
这样为了保存一个简单的[1,2,3],需要有3个指针和三个整数对象。对于数值运算来说这种结构显然比较浪费内存和CPU计算时间.
函数库numpy的导入
import numpy as np
通过array函数传递python的序列对象来创建数组,如果传递的是多层嵌套的序列,将创建多维数组
Shape属性
(一) 在python中有对象的就会有属性,在上面我们的a被赋予序列对象。
(二) 我们可以通过shape属性来改变数组的大小,也可以看到数组的大小(是一维还是二维)
(三) 例如:
(四) 由此我们可以看出数组a的“大小”它是一位数组,而数组c则是三行四列的二维数组其中第0轴的长度为3,第1轴的长度为4。还可以通过修改数组的shape属性,在保持数组元素个数不变的情况下,改变数组每个轴的长度。
给大家普及一下数组的轴:
(一) 一维数组就像一维空间,只有第0轴
(二)
二维数组就像二维空间,有第0轴,第1轴
(三)
当然三维数组就有第2轴,请看:
(四)
(五) 当然我们还可以通过修改.shape属性来修改数组轴的大小
(六) numpy数组与python列表类似,可以索引,可以通过索引修改值
(七) 当某个轴的元素为-1时,将根据数组的行数自动计算此轴的长度
(八) 数组c和d其实共享数据存储内存区域,类似python浅拷贝~
(九) 数组属性:dtype和数组数据属性的不二如是
1.1 属性图:
1.2 查看数组数据属性:
(十) 数组c和d其实共享数据存储内存区域,类似python浅拷贝~
(十一) .dtype参数指定元素类型
Arange()函数
arange函数类似于python的range函数,通过指定开始值、终值和步长来创建一维数组,注意数组不包括终值:
Fromfuction()
(十二) 通过函数来创建数组,fromfunction函数的第一个参数为函数,第二个参数会决定数组值的大小(shape)和长度 ,因为它支持多维数组,所以第二个参数必须是一个序列,所以刚才采用(10,)
(十三) 下面的例子中,输出的数组a中的每个元素a[i, j]都等于func2(i, j):