2012-10-26 159 views
0

矩陣這是我面臨的一個問題的一個簡單的例子:重新格式化在MATLAB

depth = [0:1:20]'; 
data = rand(1,length(depth))'; 

d = [depth,data]; 
d = [d;d;d]; 

考慮矩陣「d」。在這裏,我們在第一列有深度,接着是在第二欄記錄的深度溫度(在這個例子中我們有3天的數據)。我怎麼能改變這個矩陣,以便每列代表一個特定的深度,每一行代表時間。所以,最後我應該有3列21列。

回答

1

如果我理解正確,您的數組d的第1天的行數爲1:21,第2天的行數爲22:42,依此類推。 d的第1列保存深度(3次),第2列保存測量值。得到你想要的形式的結果

的一種方法是執行:

d2 = reshape(d(:,2),21,3)'; % note the ' for transposition here 

這使你用3行21列的陣列。每列表示一個深度的測量值,每行表示一天的測量值。