2012-06-26 85 views
0

我有一個9660 x 51的矩陣。第一列是日期。我用datenum來轉換日期,然後用datestr來顯示日期。但我想創建一個for循環,它將顯示整個矩陣的日期和數據。在matlab中轉換日期

例如:

'12/31/11' '18:00' '9722' 'Millbrook' '13.05' '1.763' '1.14' '0.791' '1.589' 
'12/31/11' '17:00' '9721' 'Millbrook' '13.03' '1.763' '1.138' '0.789' '1.58' 
'12/31/11' '16:00' '9720' 'Millbrook' '12.98' '1.763' '1.138' '0.786' '1.565' 
'12/31/11' '15:00' '9719' 'Millbrook' '13.14' '1.76' '1.138' '0.786' '1.555' 
'12/31/11' '14:00' '9718' 'Millbrook' '13.13' '1.76' '1.138' '0.786' '1.558' 
'12/31/11' '13:00' '9717' 'Millbrook' '13.19' '1.76' '1.135' '0.784' '1.567' 
'12/31/11' '12:00' '9716' 'Millbrook' '13.16' '1.76' '1.133' '0.781' '1.594' 
'12/31/11' '11:00' '9715' 'Millbrook' '13.15' '1.758' '1.133' '0.781' '1.626' 
'12/31/11' '10:00' '9714' 'Millbrook' '13.1' '1.758' '1.13' '0.781' '1.663' 
'12/31/11' '9:00' '9713' 'Millbrook' '12.81' '1.758' '1.13' '0.781' '1.689' 
'12/31/11' '8:00' '9712' 'Millbrook' '12.81' '1.758' '1.13' '0.781' '1.697' 
'12/31/11' '7:00' '9711' 'Millbrook' '13.02' '1.758' '1.133' '0.786' '1.699' 
'12/31/11' '6:00' '9710' 'Millbrook' '13.02' '1.76' '1.138' '0.793' '1.707' 
'12/31/11' '5:00' '9709' 'Millbrook' '13.02' '1.763' '1.143' '0.801' '1.719' 
'12/31/11' '4:00' '9708' 'Millbrook' '13.03' '1.765' '1.145' '0.801' '1.729' 
'12/31/11' '3:00' '9707' 'Millbrook' '13.03' '1.763' '1.143' '0.801' '1.741' 
'12/31/11' '2:00' '9706' 'Millbrook' '13.03' '1.763' '1.143' '0.801' '1.748' 
'12/31/11' '1:00' '9705' 'Millbrook' '13.04' '1.763' '1.143' '0.801' '1.753' 
'12/31/11' '0:00' '9704' 'Millbrook' '13.04' '1.763' '1.14' '0.798' '1.763' 

爲了簡化它,我希望能夠看全整個矩陣,而是由天。

感謝您的幫助:)

回答

1

你真的沒有白天的日期轉換爲它們分組。只需得到獨特的日期並像這樣迭代它們:

myData = { 
'12/31/11' '18:00' '9722' 'Millbrook' '13.05' '1.763' '1.14' '0.791' '1.589' 
'12/31/11' '17:00' '9721' 'Millbrook' '13.03' '1.763' '1.138' '0.789' '1.58' 
'12/31/11' '16:00' '9720' 'Millbrook' '12.98' '1.763' '1.138' '0.786' '1.565' 
'12/31/11' '15:00' '9719' 'Millbrook' '13.14' '1.76' '1.138' '0.786' '1.555' 
'12/31/11' '14:00' '9718' 'Millbrook' '13.13' '1.76' '1.138' '0.786' '1.558' 
'12/31/11' '13:00' '9717' 'Millbrook' '13.19' '1.76' '1.135' '0.784' '1.567' 
'12/31/11' '12:00' '9716' 'Millbrook' '13.16' '1.76' '1.133' '0.781' '1.594' 
'12/31/11' '11:00' '9715' 'Millbrook' '13.15' '1.758' '1.133' '0.781' '1.626' 
'12/31/11' '10:00' '9714' 'Millbrook' '13.1' '1.758' '1.13' '0.781' '1.663' 
'12/31/11' '9:00' '9713' 'Millbrook' '12.81' '1.758' '1.13' '0.781' '1.689' 
'12/31/11' '8:00' '9712' 'Millbrook' '12.81' '1.758' '1.13' '0.781' '1.697' 
'12/31/11' '7:00' '9711' 'Millbrook' '13.02' '1.758' '1.133' '0.786' '1.699' 
'12/31/11' '6:00' '9710' 'Millbrook' '13.02' '1.76' '1.138' '0.793' '1.707' 
'12/31/11' '5:00' '9709' 'Millbrook' '13.02' '1.763' '1.143' '0.801' '1.719' 
'12/31/11' '4:00' '9708' 'Millbrook' '13.03' '1.765' '1.145' '0.801' '1.729' 
'12/31/11' '3:00' '9707' 'Millbrook' '13.03' '1.763' '1.143' '0.801' '1.741' 
'12/31/11' '2:00' '9706' 'Millbrook' '13.03' '1.763' '1.143' '0.801' '1.748' 
'12/31/11' '1:00' '9705' 'Millbrook' '13.04' '1.763' '1.143' '0.801' '1.753' 
'12/31/11' '0:00' '9704' 'Millbrook' '13.04' '1.763' '1.14' '0.798' '1.763' }; 

uniqueDays = unique(myData(:,1)); 

for ind = 1:length(uniqueDays) 

    myDay = uniqueDays{ind}; 
    logThisDay = strcmpi(myDay, myData(:,1)); 

    thisDayData = myData(logThisDay,:); 

    disp(sprintf('********* DATA FOR %s *********', myDay)); 
    disp(thisDayData(:, 2:end)) 

end