Filter löschen
Filter löschen

Find the file number when a condition meets

3 Ansichten (letzte 30 Tage)
Tesla
Tesla am 21 Okt. 2021
Kommentiert: Tesla am 24 Okt. 2021
I have for example 300 files (data1.dat data2.dat data3.dat ...), and inside every file I have for example two columns X and Y.
I want to find the number (index) of the files where this condition meets:
50< X <100 and 60 <Y< 100
To get something like that:
Files = [ 10 46 230 299 ]

Akzeptierte Antwort

John D'Errico
John D'Errico am 21 Okt. 2021
Bearbeitet: John D'Errico am 21 Okt. 2021
Beginners do this sort of thing. They are tentative, almost afraid to use MATLAB, even when they think they need to. So they leave their data in files. Break your problem, ANY problem too large for you to figure it out, break it into small subproblems.
Problem 1: READ IN YOUR DATA. Bring in each file into MATLAB. Until you do this, you will constantly need to be accessing each file, dealing with the names of the files, etc. If the varius files have the same number of rows, then put it all into one 3-dimensional array. If they have different numbers of rows, then put the data into a cell array. Since you will be doing something else afterwards with this data, surely you need to read it into MATLAB eventually. Do it immediately, the first thing you do.
Problem 2: Once your data is in MATLAB, now the test is simple. It will depend on how you store the data, but there are simple ways to perform the test that would take at most a few lines of code to do. You will use find in the end to determine the indices of the datasets that fit all of the necessary rules.
If the problems above are still too large, then break them down more deeply. Eat a programming elephant, even a small one, one byte at a time.
  1 Kommentar
Tesla
Tesla am 24 Okt. 2021
Thank you for this talk, I will accept it as a solution

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by