Home > Article > Backend Development > How to convert matrix to list in Python
This time I will show you how to convert a matrix into a list in Python. What are the precautions for converting a matrix into a list in Python? The following is a practical case, let's take a look.
This article mainly introduces some functions in Python's numpy library and makes a backup for easy search.(1) Function to convert matrix to list: numpy.matrix.tolist()
Return list listExamples
>>> x = np.matrix(np.arange(12).reshape((3,4))); x matrix([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]]) >>> x.tolist() [[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10, 11]]
(2) Function to convert array to list: numpy.ndarray.tolist()
Notes: (The array may be recreated, a=np.array(a.tolist()).Examples
>>>
>>> a = np.array([1, 2]) >>> a.tolist() [1, 2] >>> a = np.array([[1, 2], [3, 4]]) >>> list(a) [array([1, 2]), array([3, 4])] >>> a.tolist() [[1, 2], [3, 4]](3) numpy.mean() calculates the mean of a matrix or array:
Examples
>>>
>>> a = np.array([[1, 2], [3, 4]]) #对所有元素求均值 >>> np.mean(a) 2.5 >>> np.mean(a, axis=0) #对每一列求均值 array([ 2., 3.]) >>> np.mean(a, axis=1) #对每一行求均值 array([ 1.5, 3.5])(4) numpy.std() calculates the standard deviation of a matrix or array:
Examples
>>>
>>> a = np.array([[1, 2], [3, 4]]) #对所有元素求标准差 >>> np.std(a) 1.1180339887498949 >>> np.std(a, axis=0) #对每一列求标准差 array([ 1., 1.]) >>> np.std(a, axis=1) #对每一行求标准差 array([ 0.5, 0.5])(5) numpy.newaxis is an array Add a dimension:
Examples:
>>> a=np.array([[1,2,3],[4,5,6],[7,8,9]]) #先输入3行2列的数组a >>> b=a[:,:2] >>> b.shape #当数组的行与列都大于1时,不需增加维度 (3, 2) >>> c=a[:,2] >>> c.shape #可以看到,当数组只有一列时,缺少列的维度 (3,) >>> c array([3, 6, 9])
>>> d=a[:,2,np.newaxis] #np.newaxis实现增加列的维度 >>> d array([[3], [6], [9]]) >>> d.shape #d的维度成了3行1列(3,1) (3, 1) >>> e=a[:,2,None] #None与np.newaxis实现相同的功能 >>> e array([[3], [6], [9]]) >>> e.shape (3, 1)(6) numpy.random.
shuffle(index): Disorganize the order of dataset (array): Examples:
>>> index = [i for i in range(10)] >>> index [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> np.random.shuffle(index) >>> index [7, 9, 3, 0, 4, 1, 5, 2, 8, 6](7) Calculate the maximum and minimum value of a
two-dimensional array in a row or column: >>> import numpy as np
>>> a = np.arange(15).reshape(5,3) #构造一个5行3列的二维数组
>>> a
array([[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8],
[ 9, 10, 11],
[12, 13, 14]])
>>> b = a[:,0].min() ##取第0列的最小值,其他列同理
>>> b
0
>>> c = a[0,:].max() ##取第0行的最大值,其他行同理
>>> c
2
n = np.array(np.random.randn(4,2))
n
Out[153]:
array([[ 0.17234 , -0.01480043],
[-0.33356669, -1.33565616],
[-1.11680009, 0.64230761],
[-0.51233174, -0.10359941]])
l = np.array([1,2,3,4])
l
Out[155]: array([1, 2, 3, 4])
l.shape
Out[156]: (4,)
As you can see, n is two-dimensional and l is one-dimensional. If you call np.hstack() directly, an error will occur. : Dimensions are different.
n = np.hstack((n,l)) ValueError: all the input arrays must have same number of dimensionsThe solution is to change l into two-dimensional. You can use the method in (5):
n = np.hstack((n,l[:,np.newaxis])) ##注意:在使用np.hstack()时必须用()把变量括起来,因为它只接受一个变量
n
Out[161]:
array([[ 0.17234 , -0.01480043, 1. ],
[-0.33356669, -1.33565616, 2. ],
[-1.11680009, 0.64230761, 3. ],
[-0.51233174, -0.10359941, 4. ]])
Let’s talk about how Add values to an empty list by column:
n = np.array([[1,2,3,4,5,6],[11,22,33,44,55,66],[111,222,333,444,555,666]]) ##产生一个三行六列容易区分的数组 n Out[166]: array([[ 1, 2, 3, 4, 5, 6], [ 11, 22, 33, 44, 55, 66], [111, 222, 333, 444, 555, 666]]) sample = [[]for i in range(3)] ##产生三行一列的空列表 Out[172]: [[], [], []] for i in range(0,6,2): ##每间隔一列便添加到sample中 sample = np.hstack((sample,n[:,i,np.newaxis])) sample Out[170]: array([[ 1., 3., 5.], [ 11., 33., 55.], [ 111., 333., 555.]])Continuously updating... I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the PHP Chinese website! Recommended reading:
How to convert lists, arrays, and matrices to each other in python
How to find the maximum in Python common divisor
The above is the detailed content of How to convert matrix to list in Python. For more information, please follow other related articles on the PHP Chinese website!