一个数组的形式为:
a[[12,31,5], [5,32,1]]
我希望添加一行1,使其变为:
a[[1,1,1], [12,31,5], [5,32,1]]
如何做到?
答案 0 :(得分:0)
您需要的只是np.vstack:
a= np.array([[12,31,5], [5,32,1]])
np.vstack([np.ones(a.shape[1]),a])
array([[ 1., 1., 1.],
[12., 31., 5.],
[ 5., 32., 1.]])
更多参与的是np.r_:
np.r_[np.ones(a.shape[1]).reshape((1,-1)),a]
array([[ 1., 1., 1.],
[12., 31., 5.],
[ 5., 32., 1.]])
答案 1 :(得分:0)
您可以按以下方式使用函数numpy.concatenate()
或numpy.vstack()
:
import numpy as np
a = np.array([[12,31,5], [5,32,1]])
b = np.ones((1,a.shape[1]))
# option 1 : with np.concatenate()
a_1 = np.concatenate((b,a),axis=0) # axis = 0 for rows
# option 2 : alternatively with np.vstack()
a_2 = np.vstack((b,a))