-1
何我可以做一個這樣的矢量M = ['彼得','瑪麗亞','米歇爾'等],並從該矢量中選擇一個隨機名?我基本上想要抽獎。Matlab矢量名稱不是數字
何我可以做一個這樣的矢量M = ['彼得','瑪麗亞','米歇爾'等],並從該矢量中選擇一個隨機名?我基本上想要抽獎。Matlab矢量名稱不是數字
可以使用(1)cell array的特徵向量:
M = {'Peter', 'Maria', 'Michelle'};
或者,使用最近推出的string數據類型,你可以創建(2)串數組:
M = ["Peter", "Maria", "Michelle"];
然後,使用randi
選擇從1
一個隨機數到numel(M)
:
n = randi(numel(M));
,並用它作爲一個指數到M
:
{}
-indexing會給的字符陣列。{}
-indexing將再次給出一個字符數組。或者你可以使用()
-indexing來獲得一個字符串。有關使用字符串索引的更多信息可以參見here。所以:
winner = M{n}; % or winner = M(n);
使用電池陣列和蘭迪功能;在正常矩陣中,所有的字符串必須是相同的長度,單元陣列中可以有任意的內容
M = {'Peter', 'Maria', 'Michelle'};
name = M{randi([1, numel(M)])};