如何将一个添加到矩阵?
How to add ones to matrix?
我有一个数组:
X = [[2, 2, 2],
[3, 3, 3],
[4, 4, 4]]
我需要在 numpy 数组中添加额外的列,并使用 hstack 和 reshape 填充它。像那样:
X = [[2, 2, 2, 1],
[3, 3, 3, 1],
[4, 4, 4, 1]]
我的工作:
X = np.hstack(X, np.ones(X.reshape(X, (2,3))))
出现错误:
TypeError: only length-1 arrays can be converted to Python scalars
有什么问题吗?我做错了什么?
以下是 numpy.append
、numpy.hstack
或 numpy.column_stack
的几种方法:
# numpy is imported as np
>>> x
array([[2, 2, 2],
[3, 3, 3],
[4, 4, 4]])
>>> np.append(x, np.ones([x.shape[0], 1], dtype=np.int32), axis=1)
array([[2, 2, 2, 1],
[3, 3, 3, 1],
[4, 4, 4, 1]])
>>> np.hstack([x, np.ones([x.shape[0], 1], dtype=np.int32)])
array([[2, 2, 2, 1],
[3, 3, 3, 1],
[4, 4, 4, 1]])
>>> np.column_stack([x, np.ones([x.shape[0], 1], dtype=np.int32)])
array([[2, 2, 2, 1],
[3, 3, 3, 1],
[4, 4, 4, 1]])
您可以使用 numpy.insert()
:
>>> X
array([[2, 2, 2],
[3, 3, 3],
[4, 4, 4]])
矩阵开头的个数:
>>> X=np.insert(X,0,1.0,axis=1)
>>> X
array([[1, 2, 2, 2],
[1, 3, 3, 3],
[1, 4, 4, 4]])
矩阵末尾的个数
>>> X=np.insert(X,3,1.0,axis=1)
>>> X
array([[2, 2, 2, 1],
[3, 3, 3, 1],
[4, 4, 4, 1]])
我有一个数组:
X = [[2, 2, 2],
[3, 3, 3],
[4, 4, 4]]
我需要在 numpy 数组中添加额外的列,并使用 hstack 和 reshape 填充它。像那样:
X = [[2, 2, 2, 1],
[3, 3, 3, 1],
[4, 4, 4, 1]]
我的工作:
X = np.hstack(X, np.ones(X.reshape(X, (2,3))))
出现错误:
TypeError: only length-1 arrays can be converted to Python scalars
有什么问题吗?我做错了什么?
以下是 numpy.append
、numpy.hstack
或 numpy.column_stack
的几种方法:
# numpy is imported as np
>>> x
array([[2, 2, 2],
[3, 3, 3],
[4, 4, 4]])
>>> np.append(x, np.ones([x.shape[0], 1], dtype=np.int32), axis=1)
array([[2, 2, 2, 1],
[3, 3, 3, 1],
[4, 4, 4, 1]])
>>> np.hstack([x, np.ones([x.shape[0], 1], dtype=np.int32)])
array([[2, 2, 2, 1],
[3, 3, 3, 1],
[4, 4, 4, 1]])
>>> np.column_stack([x, np.ones([x.shape[0], 1], dtype=np.int32)])
array([[2, 2, 2, 1],
[3, 3, 3, 1],
[4, 4, 4, 1]])
您可以使用 numpy.insert()
:
>>> X
array([[2, 2, 2],
[3, 3, 3],
[4, 4, 4]])
矩阵开头的个数:
>>> X=np.insert(X,0,1.0,axis=1)
>>> X
array([[1, 2, 2, 2],
[1, 3, 3, 3],
[1, 4, 4, 4]])
矩阵末尾的个数
>>> X=np.insert(X,3,1.0,axis=1)
>>> X
array([[2, 2, 2, 1],
[3, 3, 3, 1],
[4, 4, 4, 1]])