1
我正在嘗試使用::對角線方法在Ruby中創建矩陣。 A是我創建的一個數組。我想要做的是用a中的每個數字填充a_new_matrix的對角線,但是我得到的是a_new_matrix [0,0]是A.我怎麼能解決這個問題?無法使用數組中的::對角線創建Ruby矩陣
A = Array.new
... #populate A
a_new_matrix = Matrix.diagonal(A)
我正在嘗試使用::對角線方法在Ruby中創建矩陣。 A是我創建的一個數組。我想要做的是用a中的每個數字填充a_new_matrix的對角線,但是我得到的是a_new_matrix [0,0]是A.我怎麼能解決這個問題?無法使用數組中的::對角線創建Ruby矩陣
A = Array.new
... #populate A
a_new_matrix = Matrix.diagonal(A)
我想要做的就是填充對角線a_new_matrix的在一個
每號碼在docs:
Matrix.diagonal(9, 5, -3)
#=> 9 0 0
# 0 5 0
# 0 0 -3
因此,對於一個數組,你可以請使用splat運算符(*
):
ary = [1, 2, 3]
Matrix.diagonal(*ary)
#=> Matrix[[1, 0, 0], [0, 2, 0], [0, 0, 3]]
A是一個數組創建
小心,大寫標識符是常數。 A
是一個常數,a
是一個變量。
這正是我想要的,thx! – leoluo
你很歡迎:)另外,歡迎來到堆棧溢出! –