2016-03-01 45 views
0

我对Matlab非常陌生。对不起,如果这是一个简单的问题..如何在表中添加新行(循环)而不会覆盖

我想写一个循环来添加新的行。

files = dir('*.mat'); 
    for ii=1:numel(files) 
       file = files(ii); 

      Variable = str; 
      Correlation = RCDvsMOVRAW; 
      Signification = pRCDvsMOVRAW; 
      Lag = lagDiff; 

    T = table(Correlation,Signification,Lag,'RowNames',Variable); 
end 

非常感谢你提前。

+2

如果你有一个表已经,您可以通过级联添加行:http://uk.mathworks.com /help/matlab/matlab_prog/add-and-delete-table-rows.html'T = table(...)'不应该在你的循环中,你可以先将你的矩阵转换成表格(然后添加行),或者先将行添加到矩阵中,然后将其转换为表,无论哪种情况,都应该将该行移出循环。 – GameOfThrows

+0

谢谢!我会尝试! –

回答

0

也许这是你在找什么:

files = dir('*.mat'); 

    for K=1:numel(files) 
    file = files(K); 
     mat = load(file.name); 

     Variable = {mat.str}; 
     Correlation = mat.RCDvsMOVRAW; 
     Signification = mat.pRCDvsMOVRAW; 
     Lag = mat.lagDiff; 

     T2(K,:) = table(Variable,Correlation,Signification,Lag); 

    end 

     writetable(T2) 

希望这有助于

+0

谢谢!有用!!! –

相关问题