Read row of data from excel file and step/iterate through each row when program is looped

18 次查看(过去 30 天)
Good day,
Trying to read 1 row of data each time program loops from excel file. Excel contains 2 columns of data. Each time my program loops, therefore updating values of Data1 and Data2.
Below extract of code reading imported excel file;
Disp('Currently importing from excel raw data file')
Data = xlsread('Data');%reading excel file
newData1 = Data(:,1);Reading column 1
newData2 = Data(:,2);%Reading column 2
Objective is to update equations as new data is measured, measuring using A1 and B1 1st loop, for instance.
measuring A2, B2, - 2nd iteration of programm/loop, etc....
Above is finite set of excel data, for simulation.
Thanks in advance,
kind regards Vincent
  6 个评论
Guillaume
Guillaume 2020-1-10
So, if the file is fixed why does it need to be read in a loop?
Sorry, I'm a bit confused as to what you have as input and what you want as output.
Vincent Hodnett
Vincent Hodnett 2020-1-11
编辑:Vincent Hodnett 2020-1-11
Hello Guillaume,
Apologies, let try to clarify question; what mean or in other words;
  • Step.2 Initially the program reads Row1 of data to be used in(Row1 = Xk_p matrix) Step.2 Predicted State Matrix calculation: Xk_p used to calculate Xkp
  • Step.3 is only used in 1st iteration of program, Ans = Pk_p
  • Step.4 uses the Pk_p calculated in Step.3 to get Pk
  • Step.5 gain is calculated using both Pk and Pk_p
  • Step.6 New measurement is read Row2
  • Step.7 Uses Newmeasurement of Row2 from Step.6 and also the previous Xkp value which have calculated from Step.2 are used to calculate Current State Matrix Xk_p
  • Step.8 Uses result of Step.4 (Pkp) Predicited Process Covariance and Gain K from step.5 to calculate: New updated Process Covariance Pk_p
  • Step.9 uses the values calculated in step.8 and 9 to update Step.2 and Step.4 equations. i.ie new Xk_p is used in step.2 equation, new Pk_p is used step.4 equation to recalulate both Xkp and Pk.
(Step.3 is skipped after initial iteration)
This is what intending to to do, but issue implementing it above(variable naming/updating and repeating program), hope have clarified question.
Thanks,
kind regards Vincent

请先登录,再进行评论。

采纳的回答

Meg Noah
Meg Noah 2020-1-8
Probably not the best way, but it works:
irow = 1;
Data = xlsread('fakedata.xlsx','Sheet1',['A' num2str(irow) ':B' num2str(irow)]);
while (~isempty(Data))
fprintf(1,'%f %f\n',Data(1),Data(2));
irow = irow + 1;
Data = xlsread('fakedata.xlsx','Sheet1',['A' num2str(irow) ':B' num2str(irow)]);
end

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Data Import from MATLAB 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by