Importing Excel file and reading data

조회 수: 4 (최근 30일)
Alex Burbee
Alex Burbee 2019년 7월 31일
답변: Alex Burbee 2019년 8월 2일
I am trying to read in about 90 excel files and read in various temperatures and pressures for each excel file. Meaning, I want to log and plot Run 1 with Pressure 1 and temp 1, Run 2 with pressure 2 and temp 2, etc. How do i get the code below to add the run numbder after the B1P('instert run number here')
%Open and Read the Excel File
D = 'C:\Users\test';
S = dir(fullfile(D,'*.xlsx'));
for k = 1:numel(S)
F = fullfile(D,S(k).name);
numdata1 = xlsread(F);
opts=detectImportOptions(F);
opts.VariableNamesRange='A5';
opts.DataRange='A6';
%import your desired data
B1P1 = numdata1(:,18)
A1P1 = numdata1(:,15)
B2P1 = numdata1(:,19)
A2P1 = numdata1(:,16)
B3P1 = numdata1(:,20)
end
  댓글 수: 4
Walter Roberson
Walter Roberson 2019년 7월 31일
Leave out those three lines.
I do not understand how you want the run numbers to be used.
Alex Burbee
Alex Burbee 2019년 7월 31일
편집: Alex Burbee 2019년 7월 31일
I want the run number to be stated after the Pressure
So Run 1 would yield
A1P1
A2P1
A3P1
Run 2 would yeild
A1P2
A2P2
A3P2

댓글을 달려면 로그인하십시오.

채택된 답변

Alex Burbee
Alex Burbee 2019년 8월 2일
I ended up doing the following
D = 'Testlocation';
S = dir(fullfile(D,'*.xlsx'));
B1P = {}
B2P = {}
%...
for k = 1:numel(S)
F = fullfile(D,S(k).name);
numdata1 = xlsread(F);
opts=detectImportOptions(F);
opts.VariableNamesRange='A5';
opts.DataRange='A6';
%import your desired data
B1P{k} = numdata1(:,18)
A1P{k} = numdata1(:,15)
B2P{k} = numdata1(:,19)

추가 답변 (1개)

Sulaymon Eshkabilov
Sulaymon Eshkabilov 2019년 7월 31일
Hi,
Here is the simple solution to your problem:
D = 'C:\Users\test'; % Directory where all data: Run1.xls, Run2.xls, ... stored
N = 90; % Number of data files to read/load
DATA_ALL =cell(1, N); % Memory allocation
%Pressure = zeros( ??, 90); % Memory allocation
%Temperature = zeros(???, 90); % Memory allocation
for k = 1:N
Filename = sprintf('RUN_%d.xls', ii);
DATA = xlsread(Filename);
DATA_ALL{k} = DATA; % All read data saved in cell
Pressure(:, k) = DATA(:,1); % 1st column is pressure
Temperature(:,k)= DATA(:,2); % 2nd colum is temperature
% plot(Pressure(:,k), Temperature(:,k)), hold all % To see the plots from each logged data
end
Good luck

카테고리

Help CenterFile Exchange에서 Spreadsheets에 대해 자세히 알아보기

제품


릴리스

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by