2017-02-20 391 views
-1

我有2個向量,我想隨機生成。 2個向量是輸入,下面的目標向量將作爲參數傳遞給感知器算法。MATLAB - 生成隨機向量

input = [-1 -1 1 1; -1 1 1 -1]; 
target =[1 0 0 1]; 

的載體將是-1和1之間。我試圖使用從How to generate random vector from specific user defined range?解但是沒能得到這個工作。

+0

數字應該在-1到1之間還是隻應該是-1,0,1? – eyllanesc

+0

它將只有-1,0,1 –

+2

你可以顯示你的嘗試。 – eyllanesc

回答

1

使用蘭迪:

input = -2 + randi(3, 2, 4) 
output = -2 + randi(3, 1, 4) 

輸出:

input = 

    1 1 -1 0 
    -1 -1 1 -1 

output = 

    0 -1 -1 1 
+0

感謝似乎工作 –

0

只需使用randint功能來生成隨機整數指定所需的範圍(在你的情況是[-1,... ,1])。

r=randint(1,5,[-1,1]); %Generate a 1*5 vector with values between -1 to 1 

r = 
    -1  1  1  0  1 

你可能會得到這樣的警告,這取決於上你的Matlab的版本:

:在這種情況下,「警告。這是一個過時的功能,並可能在將來被刪除,請使用RANDI代替」 ,建議使用randi函數。

+0

*可能在將來被刪除*?它已被刪除,它是「通信系統工具箱」的一部分。 –