Python 如何将数组添加到numpy矩阵中?
例如,我想将列表“z”中的第一个元素放入numpy中的矩阵中,如下所示Python 如何将数组添加到numpy矩阵中?,python,arrays,python-3.x,numpy,Python,Arrays,Python 3.x,Numpy,例如,我想将列表“z”中的第一个元素放入numpy中的矩阵中,如下所示 z = [1,2] A = np.mat("12,z[0],-12,6;6,4,-6,2") 检查此项: import numpy as np z = [1, 2] A = np.matrix('12, ' + str(z[0]) + ' , -12, 6 ; 6, 4, -6, 2') print(A) #returns/Output [[ 12 1 -12 6] [ 6 4 -6 2
z = [1,2]
A = np.mat("12,z[0],-12,6;6,4,-6,2")
检查此项:
import numpy as np
z = [1, 2]
A = np.matrix('12, ' + str(z[0]) + ' , -12, 6 ; 6, 4, -6, 2')
print(A)
#returns/Output
[[ 12 1 -12 6]
[ 6 4 -6 2]]
使用常规的
数组
构造函数
In [167]: z=[1,2]
In [168]: arr = np.array([[ 1,z[0], 2], [3, 4, z[1]]])
In [169]: arr
Out[169]:
array([[1, 1, 2],
[3, 4, 2]])
mat('12;34')
表单应该可以帮助MATLAB用户适应numpy
。它不适用于复杂的条目。此表达式中的字符串分析器无法处理变量和表达式
np.matrix
不鼓励使用,因为它在许多情况下会增加复杂性。它将在numpy
中保留很长一段时间,但除非您确实需要某些特殊功能,否则不要使用它
也就是说,基本Python字符串格式中的一个新功能使这种表达式更容易:
In [171]: np.matrix(f'1,{z[0]},2;3,4,{z[1]}')
Out[171]:
matrix([[1, 1, 2],
[3, 4, 2]])
新的f'
字符串可以处理变量和表达式替换:
In [172]: f'1,{z[0]},2;3,4,{z[1]}'
Out[172]: '1,1,2;3,4,2'
In [175]: np.matrix(f'1,{z[0]},2;3,4,{sum(z)}')
Out[175]:
matrix([[1, 1, 2],
[3, 4, 3]])
np.matrix
将被弃用。请不要再使用它了。好的,我会记住这个:)谢谢!