Effacer les filtres
Effacer les filtres

How to identify text files with zero value

5 vues (au cours des 30 derniers jours)
Tanmoyee Bhattacharya
Tanmoyee Bhattacharya le 17 Avr 2023
Commenté : dpb le 19 Avr 2023
I have 10 text files and each text file has 9 rows and one column. In some text file total column is zero. Like
0
0
0
0
In other file there are zero values and numbers. Like
0
1
2
0
3
4
5
I want to extract text files with total column of zero values
0
0
0
0
0
If there is any way to extract the text files

Réponse acceptée

dpb
dpb le 17 Avr 2023
Déplacé(e) : dpb le 17 Avr 2023
"...is any way to extract the text files[?]"
What do you mean by "extract", precisely? What is the end result you're after; to read the data files that actually contain one or more nonzero values, identify which files are those that contain only zero values, ...?
The answer to all of those will be based on simply reading each file in turn and testing the content something like
d=dir('*.txt'); % substitute suitable wildcard for your case to identify wanted files
for i=1:numel(d)
data=readmatrix(fullfile(d(i).folder,d(i).name));
if any(data)
%...do what need to do for those with some nonzero values here
else
%...and all zeros here...
end
end
  7 commentaires
Walter Roberson
Walter Roberson le 19 Avr 2023
Modifié(e) : Walter Roberson le 19 Avr 2023
Old enough versions of MATLAB did not have the .folder property of dir() results.
%the below logic requires that the data file be just a list of numbers,
%one per line, with no headers. (Or if it has headers, the header line must
%start with '%' characters.)
%if this is not true, if there are header lines, the code would need to be
%modified
folder_to_search = 'C:\Users\DELL\Desktop\file';
folder_to_move_allzero = './all0';
folder_to_move_rest = './not0';
if ~isdir(folder_to_move_allzero); mkdir(folder_to_move_allzero); end
if ~isdir(folder_to_move_rest); mkdir(folder_to_move_rest); end
d = dir( fullfile(folder_to_search, '*.txt')); % substitute suitable wildcard for your case to identify wanted files
for i=1:numel(d)
thisfile = fullfile(folder_to_search,d(i).name);
data = load(thisfile, '-ascii');
if any(data)
movefile(thisfile, folder_to_move_rest);
else
movefile(thisfile, folder_to_move_allzero);
end
end
dpb
dpb le 19 Avr 2023
I certainly had forgotten that fact, Walter...

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur File Operations dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by