2011-07-02 72 views
-1

使用循環排列數據如果我有:在MATLAB

t=(1:1:5)' 
    time=1:3:100 

如何安排數據噸在每列從1開始直到結束,用3的間隔這意味着所述數據T(1到5)第1,4,7列等等。

我已經試過:

t=[1:1:5]; 
nt=length(temp); 
time=[1:1:100]; 
nti=length(time); 
x=zeros(nt,nti); 

temp=temp'; 
initiator=2; 
monomer=3; 

post=1:3:100; 

for l=1:post 

step=1; 
maxstep=100; 
while (step<maxstep) 
    step=step+3; 
    temp=(1:1:5)'; 
end 
t(:,l)=t; 
x=[t]; 

end 

這隻能說明結果X與第1列臨時,我不知道該怎麼安排的,我想這列數據。

希望有人能幫助我。先謝謝你。

回答

0

您的數據有多少維度?如果您已經具有「溫度」(溫度?)和「時間」作爲前兩個維度,並且您希望「t」成爲第三維,則創建一個三維矩陣。

從索引[1 4 7 10 13 16 ...]提取,使用(1:3:end)
爲了提取從索引[2 5 8 11 14 17 ...],使用(2:3:end)

在MATLAB中的結腸符號,第一個值是開始。第二個值是增量。第三個值是最終值並且是包含性的。

+0

ops,sorry.i忘記change.temp我改變爲t.means,長度(溫度)是長度(t)。我想要的結果將顯示如下:1st row [1 0 0 1 0 0 1 0 0 1 0 0 ........第2行2 0 0 2 0 0 2 0 0 2 0 0 .........第3行3 0 0 3 0 0 3 0 0 3 0 0 ...........第4行4 0 0 4 0 0 4 0 0 4 0 0 ...........第5行5 0 0 5 0 0 5 0 0 5 0 0 ] – rina

+0

t =(1:1:5),矩陣中的結果t在列1,4,7,10 ..... – rina