0
我很困惑通過下面的代碼:爲什麼這不是一個二維數組?
>> x = [0.4+randn(100,1).*0.15; 1+ randn(200,1).*0.25];
>> size(x)
ans =
300 1
我以爲分號被用來表示矩陣中的單獨一行。鑑於兩個矢量的長度不相同,這不應該引起錯誤嗎?
我錯過了什麼?
我很困惑通過下面的代碼:爲什麼這不是一個二維數組?
>> x = [0.4+randn(100,1).*0.15; 1+ randn(200,1).*0.25];
>> size(x)
ans =
300 1
我以爲分號被用來表示矩陣中的單獨一行。鑑於兩個矢量的長度不相同,這不應該引起錯誤嗎?
我錯過了什麼?
在創建2個陣列和串聯那些:
randn(100,1)創建了一個100行,1列陣列 randn(200,1)創建了一個200行,1列陣列
表達式中的分號表示:'將它們放在下面' 如果刪除分號(;),它將是一個矩陣(並且可能會給出錯誤)。然後,您將2個列向量彼此相鄰。
哦,我明白了!我們在這裏的垂直維度上工作,所以說「把這個垂直列放在另一個垂直列下面的行」類似於調用'cat'。謝謝!這是一個主要的大腦放屁= / – blz
使用逗號代替分號。 –
如果使用逗號,則會由於尺寸不一致而引發錯誤。 –