2013-01-31 28 views
1

假設我們有存儲的誰參加了實驗對象的姓名和性別下面的單元格數組:STRCMP功能

Names = { 'Amy' , 'Chris' , 'John' , 'Karin' , 'Juan' }; 
Gender = { 'Female' , 'Male' , 'Male' , 'Female' , 'Male' }; 

假設實驗還測量響應時間的試驗次數。我們存儲在以下矩陣此信息每列對應於一個人,每一行對應於一個試驗實驗:

ResponseTimes = [ 2.4 2.2 2.9 2.7 2.7; 
        1.6 1.7 1.9 1.5 1.0; 
        2.1 2.2 0.9 2.5 1.9; 
        1.7 2.4 1.6 2.1 1.4 ]; 

如何創建一個MATLAB命令使用strcmp功能,列出了所有男性的名字呢?

+2

與問題的任何相關性的響應時間? – Junuxx

回答

4

您可以嘗試

Names(strcmp(Gender, 'Male')) 

導致

ans = 
    'Chris' 'John' 'Juan' 
0

只是一個猜測,你可能還需要相應的響應時間:

idx = strcmp(Gender, 'Male'); 
maleNames = Names(idx); 
maleResponseTimes = ResponseTimes(:,idx); 

對於女性使用Names(~idx)ResponseTimes(:,~idx)