开启方法

内容部分先不用管,我这边只是做个测试,过几天会讲这些的,先忽略



 

 
 
矩阵系列¶ <https://www.cnblogs.com/dotnetcrazy/p/9283971.html#矩阵系列>

1.创建特殊矩阵¶ <https://www.cnblogs.com/dotnetcrazy/p/9283971.html#1.创建特殊矩阵>

1.1.创建全为0的矩阵¶ <https://www.cnblogs.com/dotnetcrazy/p/9283971.html#1.1.创建全为0的矩阵>

np.zeros(tuple)

$$\begin{bmatrix} 0&0&0 \\ 0&0&0 \\ 0&0&0 \end{bmatrix}$$
In [1]: import numpy as np In [2]: help(np.zeros)   Help on built-in function
zeros in module numpy.core.multiarray: zeros(...) zeros(shape, dtype=float,
order='C') Return a new array of given shape and type, filled with zeros.
Parameters ---------- shape : int or sequence 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 Whether to store multidimensional data in C- or
Fortran-contiguous (row- or column-wise) order in memory. Returns ------- out :
ndarray Array of zeros with the given shape, dtype, and order. See Also
-------- zeros_like : Return an array of zeros with shape and type of input.
ones_like : Return an array of ones with shape and type of input. empty_like :
Return an empty array with shape and type of input. ones : Return a new array
setting values to one. empty : Return a new uninitialized array. Examples
-------- >>> np.zeros(5) array([ 0., 0., 0., 0., 0.]) >>> np.zeros((5,),
dtype=int) array([0, 0, 0, 0, 0]) >>> np.zeros((2, 1)) array([[ 0.], [ 0.]])
>>> s = (2,2) >>> np.zeros(s) array([[ 0., 0.], [ 0., 0.]]) >>> np.zeros((2,),
dtype=[('x', 'i4'), ('y', 'i4')]) # custom dtype array([(0, 0), (0, 0)],
dtype=[('x', '<i4'), ('y', '<i4')]) In [3]: # 一维 np.zeros(5) #
完整写法:np.zeros((5,)) Out[3]: array([0., 0., 0., 0., 0.]) In [4]: # 可以指定类型 np.
zeros(5,dtype=int) Out[4]: array([0, 0, 0, 0, 0]) In [5]: # 二维 np.zeros((2,5))
Out[5]: array([[0., 0., 0., 0., 0.], [0., 0., 0., 0., 0.]]) In [6]: # 三维 ==>
可以这么理解,2个2*5(2行5列)的矩阵 np.zeros((2,2,5)) Out[6]: array([[[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.]], [[0., 0., 0., 0., 0.], [0., 0., 0., 0., 0.]]]) In [7]:
################### 扩展部分 ######################## In [8]: #
建议用元组,官方文档都是元组,而且shape返回类型就是元组 array1 = np.zeros([2,3]) print(array1) type(
array1) print(array1.shape) # shape返回类型就是元组   [[0. 0. 0.] [0. 0. 0.]] (2, 3)  
1.2.创建全为1的矩阵¶ <https://www.cnblogs.com/dotnetcrazy/p/9283971.html#1.2.创建全为1的矩阵>

np.ones(tuple) 用法和np.zeros(tuple)差不多

$$\begin{bmatrix} 1&1&1 \\ 1&1&1 \\ 1&1&1 \end{bmatrix}$$
In [9]: help(np.ones)   Help on function ones in module numpy.core.numeric:
ones(shape, dtype=None, order='C') Return a new array of given shape and type,
filled with ones. Parameters ---------- shape : int or sequence 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 Whether to store multidimensional
data in C- or Fortran-contiguous (row- or column-wise) order in memory. Returns
------- out : ndarray Array of ones with the given shape, dtype, and order. See
Also -------- zeros, ones_like Examples -------- >>> np.ones(5) array([ 1., 1.,
1., 1., 1.]) >>> np.ones((5,), dtype=int) array([1, 1, 1, 1, 1]) >>>
np.ones((2, 1)) array([[ 1.], [ 1.]]) >>> s = (2,2) >>> np.ones(s) array([[ 1.,
1.], [ 1., 1.]]) In [10]: # 一维 np.ones(5) # 完整写法 np.ones((5,)) Out[10]:
array([1., 1., 1., 1., 1.]) In [11]: # 可以指定类型 np.ones(5,dtype=int) Out[11]:
array([1, 1, 1, 1, 1]) In [12]: # 二维,传一个shape元组 np.ones((2,5)) Out[12]:
array([[1., 1., 1., 1., 1.], [1., 1., 1., 1., 1.]]) In [13]: # 三维 可以理解为两个二维数组 np
.ones((2,2,5)) Out[13]: array([[[1., 1., 1., 1., 1.], [1., 1., 1., 1., 1.]],
[[1., 1., 1., 1., 1.], [1., 1., 1., 1., 1.]]])  
1.3.单位矩阵¶ <https://www.cnblogs.com/dotnetcrazy/p/9283971.html#1.3.单位矩阵>

先普及一个数学基础:任何矩阵 x 单位矩阵 都等于其本身

单位矩阵是个方阵,从左上角到右下角的对角线(称为主对角线)上的元素均为1。其他全都为0,eg:

$$\begin{bmatrix} 1&0&0 \\ 0&1&0 \\ 0&0&1 \end{bmatrix}$$

用 np.eye() 来定义(eye:眼睛)

扩展:np.eye(rows,columns=rows)
In [14]: help(np.eye)   Help on function eye in module numpy.lib.twodim_base:
eye(N, M=None, k=0, dtype=<class 'float'>, order='C') Return a 2-D array with
ones on the diagonal and zeros elsewhere. Parameters ---------- N : int Number
of rows in the output. M : int, optional Number of columns in the output. If
None, defaults to `N`. k : int, optional Index of the diagonal: 0 (the default)
refers to the main diagonal, a positive value refers to an upper diagonal, and
a negative value to a lower diagonal. dtype : data-type, optional Data-type of
the returned array. order : {'C', 'F'}, optional Whether the output should be
stored in row-major (C-style) or column-major (Fortran-style) order in memory.
.. versionadded:: 1.14.0 Returns ------- I : ndarray of shape (N,M) An array
where all elements are equal to zero, except for the `k`-th diagonal, whose
values are equal to one. See Also -------- identity : (almost) equivalent
function diag : diagonal 2-D array from a 1-D array specified by the user.
Examples -------- >>> np.eye(2, dtype=int) array([[1, 0], [0, 1]]) >>>
np.eye(3, k=1) array([[ 0., 1., 0.], [ 0., 0., 1.], [ 0., 0., 0.]]) In [15]: #
定义一个2行的单位矩阵(列默认和行一致) np.eye(2) Out[15]: array([[1., 0.], [0., 1.]]) In [16]: np.
eye(3,dtype=int) Out[16]: array([[1, 0, 0], [0, 1, 0], [0, 0, 1]]) In [17]: #
定义一个5行5列的单位矩阵 np.eye(5) Out[17]: array([[1., 0., 0., 0., 0.], [0., 1., 0., 0.,
0.], [0., 0., 1., 0., 0.], [0., 0., 0., 1., 0.], [0., 0., 0., 0., 1.]])

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信