removing duplicate data
Show older comments
[EDIT: 20110513 00:34 CDT - reformat - WDR]
I have a text file containing some data and there are some duplicates
line1 : 123 456 789
line2 : 123 456 789
line3 : 234 567 890
line4 : 123 456 789
line5 : 456 789 012
how can I remove the repeated data and save back to my txt file?
Answers (1)
Matt Fig
on 25 Mar 2011
0 votes
Load the data, call the UNIQUE function with the rows option, then save the result.
9 Comments
Hoa
on 25 Mar 2011
Matt Fig
on 25 Mar 2011
Then you need to be more specific. Given the data:
123 456 789
123 456 789
234 567 890
123 456 789
456 789 012
What do you expect the output to be? Do you want the output to be:
123
456
789
234
567
890
012
or, did you want the output to be:
123 456 789
234 567 890
456 789 012
Hoa
on 25 Mar 2011
Jan
on 25 Mar 2011
Then UNIQUE(Data, 'rows') should work.
Matt Fig
on 25 Mar 2011
fid = fopen('mydata.txt','r');
T = textscan(fid,'%f%f%f','collectoutput',1);T = T{1};
U = unique(T);
fclose(fid);
fid = fopen('mydata.txt','w');
fprintf(fid,'%g\r',U.');
fclose(fid);
Hoa
on 26 Mar 2011
Walter Roberson
on 26 Mar 2011
Please show your current code.
Hoa
on 27 Mar 2011
Walter Roberson
on 27 Mar 2011
Change the line
fprintf(fid,'%g\r',U.');
to
fprintf(fid,'%g\n',U.');
Categories
Find more on Get Started with MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!