how can I arrange the answer into an array?

8 visualizaciones (últimos 30 días)
Tan Has
Tan Has el 31 de Ag. de 2012
my code is:
allData = xlsread('C:\in.xlsx');
%time vector and a column array of temperatures
timeVec = allData(:,1);
tempVecs = allData(:,2:end);
%Find the peak time of all temperatures
[maxTemps, maxIndices] = max(tempVecs);
timeVec(maxIndices);
%Find the times that temperature increases
for i =1:5;
for j=200:50:850;
firstIndex = find(tempVecs(:,i) > j, 1, 'first');
lastIndex = find(tempVecs(:,i) > j, 1, 'last');
a=timeVec(firstIndex);
b=timeVec(lastIndex);
residence=b-a;
end
end
Output is like
residence =
82.6500
residence =
73.6500
residence =
63.366
residence =
52.3000
residence =
40.5167
residence =
26.2000
.............
total 70 data.
each column has 14 data point. I want to arrange the residence time in a one file that has 5 column and each column contains 14 data. How can I do that? Any one can help me. A very good guy help me to do the above code. thank good guy.

Respuesta aceptada

Azzi Abdelmalek
Azzi Abdelmalek el 31 de Ag. de 2012
Editada: Azzi Abdelmalek el 31 de Ag. de 2012
allData = xlsread('C:\in.xlsx');
%time vector and a column array of temperatures
timeVec = allData(:,1);
tempVecs = allData(:,2:end);
%Find the peak time of all temperatures
[maxTemps, maxIndices] = max(tempVecs);
(maxIndices);
% initialise a counter
count=0;
%Find the times that temperature increases
for i =1:5;
for j=200:50:850;
count=count+1;
firstIndex = find(tempVecs(:,i) > j, 1, 'first');
lastIndex = find(tempVecs(:,i) > j, 1, 'last');
a=timeVec(firstIndex);
b=timeVec(lastIndex);
%store a vector residecnce 1x70
residence(count)=b-a;
end
end
%reshape a vector residence
residence=reshape(residence,14,5)
  5 comentarios
Tan Has
Tan Has el 3 de Sept. de 2012
I mean no value. in the code i represent column number and j represent value range. for an example fir i=1 the first column has max value 1100. so 850 value for j falls within the range but if the second column has max value 767 then 800 and 850 is out of max value. so in that case i need to consider j= 200: 50: 750. which is i am doing now manually by changing the j after observe the max value. Can I do that automatically?
Azzi Abdelmalek
Azzi Abdelmalek el 3 de Sept. de 2012
u cane add nan value to tempVecs and some values to timeVec
n=length(tempVecs)
if n<850
tempVecs(end+1:850)=nan
timeVec(end+1:850)= timeVec(end)+1: timeVec(end)+850-n
end

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre WLAN Toolbox en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by