Matching lines of data and negating errors in the textfile

1 vue (au cours des 30 derniers jours)
charles atlas
charles atlas le 18 Jan 2012
I am reading in a text file with the following code:
fid=fopen(filename.txt, rt);
X=textscan(fid, %s%s%s%s%s’, ‘headerlines’, 5);
I have to read in all the data as string data because when ever there is an error, the whole line that I am looking at is marked with tacs. Here is what I mean:
X{1}=
5
7
9
12
X{2}=
12
15
---
32
if the columns were all lined up in the matrix X(which is a cell array) it would look like this:
X=
5 12 12:23:51 Y 45
7 15 12:28:34 N 234
9 --- --:--:-- - 23
12 32 12:34:17 Y 87
What I want to do with this is compare the first two columns of data with the Y’s and N’s. I want to take any row of data that has an has a Y in the 4th column and leave out any row that has an N or a “-“ in it.
My end result would be individual rows or a matrix with the data I want, ex:
Xfinal=
5 12 12:23:51 Y 45
12 32 12:34:17 Y 87
Or if it is easier:
X1=
5
12
X2=
12
32
Etc.

Réponse acceptée

Walter Roberson
Walter Roberson le 18 Jan 2012
Xfinal = X( strcmp(X{4}, 'Y'), :);

Plus de réponses (0)

Catégories

En savoir plus sur Low-Level File I/O dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by