快速回顾numpy array
A NumPy array is basically like a container that holds numeric data that’s all of the same data type. I’m simplifying things a little, but that’s the essence of them.
We can create a very simple NumPy array as follows:
Numpy数组就像是一个容器,里面装着相同数据类型的数据。我们可以这样创建数组:
1 | import numpy as np |
我们创建了一个拥有2行6列的二维数组。所有数据都是整数(integers)。记住,在numpy的数组里,所有数据都必须是相同的数据类型。
当然数组可以是更加复杂的三维数组或者N维数组。
创建空的数组Arrays
我们可以用Numpy array()函数创建一个空的,全是数字0的数组。
1 | np.array([[0,0,0],[0,0,0]]) |
如果你需要创建更加大的多维数组,效率就不够高了:
1 | np.array([[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] |
别怕,我们可以用 Numpy reshape()方法:
1 | np.zeros(90).reshape((3,30)) |
这个方法也不是很好,我们有更好的。
走,去看 zeros函数!
Zeros函数语法
这个函数可以让你创建只有0的数组。
更重要地,这个函数可以让你指定数组的维度(dimensions)。也可以让你指定数据类型。
Then inside the
zeros()
function, there is a set of arguments. The first positional argument is a tuple of values that specifies the dimensions of the new array.Next, there’s an argument that enables you to specify the data type. If you don’t specify a data type,
np.zeros()
will use floats by default.
可以简单地看成,np.zeros(shape = (n行, m列), dtype = 数据类型)。如果不指定数据类型,会默认为floats。
例子
例子1
有5个0,1维数组
1 | np.zeros(5) |
那我们可以看到数组里有5个元素,都是0。并且都是浮点数。
例子2
用 dtype
指定数据类型,整数(int)。
1 | np.zeros(3, dtype = int) |
还可以用dtype测试下数据的类型是不是整数int:
1 | 3, dtype = int).dtype np.zeros( |
例子3
指定shape:
1 | np.zeros(shape = (2, 3)) |
也可以写成这样:
1 | np.zeros((2, 3)) |
例子4
指定shape和dtype:
1 | np.zeros(shape = (3, 5), dtype = 'int') |
我们创建了一个3行5列的都是0的矩阵。
例子5
接下来我们可以试试更加大的数组:
1 | np.zeros(shape = (3, 3, 5), dtype = 'int') |
https://www.numpy.org/devdocs/reference/generated/numpy.zeros.html?highlight=zeros
numpy.zeros
(shape, dtype=float, order=’C’)
Return a new array of given shape and type, filled with zeros.
Parameters
shape : int or tuple of ints
Shape of the new array, e.g., (2, 3)
or 2
.
dtype : data-type, optional
The desired data-type for the array, e.g., numpy.int8
. Default is numpy.float64
.
order : {‘C’, ‘F’}, optional, default: ‘C’
Whether to store multi-dimensional data in row-major (C-style) or column-major (Fortran-style) order in memory.
Returns
out : ndarray
Array of zeros with the given shape, dtype, and order.
例子
1 | 5) np.zeros( |
1 | 5,), dtype=int) np.zeros(( |
1 | 2, 1)) np.zeros(( |
1 | 2,2) s = ( |
1 | 2,), dtype=[('x', 'i4'), ('y', 'i4')]) # custom dtype np.zeros(( |