2012-08-13 71 views
0

我有以下的細胞:查找單元格式信息在MATLAB

matr = '01/07/2012' '00:00' [ 0.2000] 
     '05/07/2012' '17:00' [  1] 
     '05/07/2012' '20:00' [ 8.4000] 
     '05/07/2012' '21:00' [ 1.2000] 
     '06/07/2012' '02:00' [ 0.4000] 
     '06/07/2012' '19:00' [  5] 
     '07/07/2012' '01:00' [  7] 
     '08/07/2012' '00:00' [ 4.2000] 
     '08/07/2012' '01:00' [  3] 
     '08/07/2012' '04:00' [ 0.2000] 
     '09/07/2012' '16:00' [ 0.2000] 
     '09/07/2012' '23:00' [  3] 
     '22/07/2012' '20:00' [ 4.2000] 
     '23/07/2012' '20:00' [ 1.2000] 
     '23/07/2012' '22:00' [ 5.4000] 
     '25/07/2012' '22:00' [14.6000] 
     '27/07/2012' '21:00' [ 0.2000] 
     '28/07/2012' '23:00' [ 0.2000] 
     '30/07/2012' '20:00' [ 0.2000] 

我想20:00至23:00之間只選擇信息。我如何繼續,一旦matr(:,2)是一個字符串信息?

+1

您需要將時間信息轉換爲數字,以便您可以使用>或<運算符進行比較,請參閱http://www.mathworks.com/help/techdoc/ref/datenum .html – slayton 2012-08-13 20:12:12

回答

1

如果您只關心小時,那麼只需使用該列創建索引數組。這可以通過datevec函數快速完成。

[~,~,~,H] = datevec(matr(:,2)); 
idx = H >= 20 & H <= 23; 
matr(idx,:) 
+0

它很棒。 – 2012-08-14 15:21:09

相關問題