0
我想在Matlab中將未知長度的數組分成兩個隨機長度數組。我認爲我能夠做到,但它有點笨重。我也希望能夠保存所有可能的組合(子矩陣1和子矩陣2的矩陣),但我在這樣做時遇到了困難,因爲它不能保存在矩陣中,因爲它們都具有不同的長度。我應該使用單元格嗎?將數組分爲兩個隨機長度數組
這是我的用於拆分陣列
Array = [1 2 4 5 6 2 3]
x = randi(length(Array))
newArray1 = Array(1:x)
newArray2 = Array(x+1:end)
想運行上面的代碼幾次和ARRAY1和陣列2的每個組合保存在其自己的基質或細胞等代碼下面
all_of_Array1 = [all_ofArray1:newArray1]
all_of_Array2 = [all_ofArray2:newArray2]
謝謝!
使用'x = randi(length(Array));''newArray2'可能是空的。使用'x = randi(length(Array)-1);'如果你不想要那個 –
@LuisMendo,但是你也不想'x'出於同樣的原因吧?所以不應該是'x = randi(length(Array)-2)+ 1'? – Dan
@Dan不,因爲'randi'從1開始,而不是在0。'newArray1 = Array(1:x)'''x'等於'1'很好 –