我在將NumPy數組轉換爲1-D時遇到問題。我看到了我在SO上發現的想法,但問題依然存在。NumPy - 將數組重塑爲1-D
nu = np.reshape(np.dot(prior.T, randn(d)), -1)
print 'nu1', str(nu.shape)
print nu
nu = nu.ravel()
print 'nu2', str(nu.shape)
print nu
nu = nu.flatten()
print 'nu3', str(nu.shape)
print nu
nu = nu.reshape(d)
print 'nu4', str(nu.shape)
print nu
的代碼產生以下輸出:
nu1 (1, 200)
[[-0.0174428 -0.01855013 ... 0.01137508 0.00577147]]
nu2 (1, 200)
[[-0.0174428 -0.01855013 ... 0.01137508 0.00577147]]
nu3 (1, 200)
[[-0.0174428 -0.01855013 ... 0.01137508 0.00577147]]
nu4 (1, 200)
[[-0.0174428 -0.01855013 ... 0.01137508 0.00577147]]
你覺得可能是什麼問題?我在做什麼錯誤?
編輯:之前是(200,200),d是200.我想要得到一維數組:[-0.0174428 -0.01855013 ... 0.01137508 0.00577147]的大小(200,)。 d爲200
EDIT2:也randn是numpy.random(從numpy.random進口randn)
「前」的維度是什麼?另外,你還期待什麼? – mtrw
之前是(200,200)。我想獲得一維數組:[-0.0174428 -0.01855013 ... 0.01137508 0.00577147] – Jacek
你可以爲'prior'添加一些代碼嗎?將它設置爲'np.ones([d,d])'會產生你想要的輸出。 – Stefan