Azzera filtri
Azzera filtri

Find max values within a defined range for each column and rows of a matrix

3 visualizzazioni (ultimi 30 giorni)
Hi!
I have a 20x305471 matrix, representing 20 variables in a time series sampled at 28.28 Hz. I have also have a time vector (1x305471) = [0, 0.0354, …. And up to 10800];
I want to extract maximum values using different time ranges. E.g. I want to find the maximum values from 0 to 40 min, 40 to 120min.. up to 160 to 180min.
Any help is very appreciated! Thanks

Risposta accettata

dpb
dpb il 15 Nov 2021
Turn into a timetable and use retime
  5 Commenti
Askeladden2
Askeladden2 il 17 Nov 2021
I need to convert them back into an array because I am using the values for creating probability distributions and etc.
dpb
dpb il 17 Nov 2021
Modificato: dpb il 17 Nov 2021
Just reference the desired variables directly from the table/timetable -- no need to create separate, duplicates as arrays.
See the section on the table data class on how to reference into a table for the myriad of available addressing syntaxes. To return just a variable, the "dot" notation is painless and efficient...
ttMyTT=table2timetable(readtable('myfile.ext'));
plot(ttMyTT.time,ttMyTT.VarX)
No auxiliary arrays in sight/needed...use your own variable names in the data file, of course.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Matrices and Arrays in Help Center e File Exchange

Prodotti


Release

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by