Filter löschen
Filter löschen

How to detect number of zero string in a cell

3 Ansichten (letzte 30 Tage)
Fateme Jalali
Fateme Jalali am 18 Jan. 2016
Kommentiert: Star Strider am 18 Jan. 2016
Hi,I attached my matlab code and database. I want to count howmany '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0' happens in diffr

Akzeptierte Antwort

Star Strider
Star Strider am 18 Jan. 2016
There are no zero strings in your data. I assume you want to find out which are the same in the two files. You can do that easily enough by converting them to character arrays and using the intersect function:
fidi1 = fopen('Fateme Jalali t2.txt');
tt1 = textscan(fidi1,'%s', 'delimiter', '\n');
fclose(fidi1);
fidi2 = fopen('Fateme Jalali t3.txt');
tt2 = textscan(fidi1,'%s', 'delimiter', '\n');
fclose(fidi2);
tt1s = char(tt1{:});
tt2s = char(tt2{:});
[C,ia,ib] = intersect(tt1s,tt2s,'rows','stable');
If you want to find out which ones are not the same, use the setdiff function instead of intersect:
[C,ia] = setdiff(tt2s,tt1s,'rows','stable');
You will probably have to experiment to get the result you want, but one of these should work for you.

Weitere Antworten (1)

Image Analyst
Image Analyst am 18 Jan. 2016
Bearbeitet: Image Analyst am 18 Jan. 2016
Anyway, to count the number of zeros in a line of text from your file, you can do this to one line of text
numZeros = sum(textLine == '0');
To count the number of contiguous regions of zeros (so like [0 0 0 0] would be one region instead of 4), you'd use bwlabel():
[L, numZeroRegions] = bwlabel(textLine == '0');

Kategorien

Mehr zu Characters and Strings 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