How can i edit data in multiple text files?
显示 更早的评论
I have hundreds of .txt files of data, and i need to order that data, and save only the top and bottom 10% of it to the same .txt file.
I've looked arround and tryed some things out but with no luck so far.
This is what i have.
clear all
close all
clc
Folder = 'C:\Users\Bruno\Desktop\teste123';
FilePattern = fullfile(Folder, '*.txt');
TheFiles = dir(FilePattern);
for k = 1 : length(TheFiles)
BaseFileName = TheFiles(k).name;
FullFileName = fullfile(TheFiles(k).folder, BaseFileName);
Data = readmatrix(BaseFileName);
SortedData = sortrows (Data,-5);
RowsToDelete = [11:83];
SortedData(RowsToDelete,:) = [];
HighCorr = SortedData(1:10,:);
LowCorr = SortedData(11:20,:);
end
With this script, matlab only gives me the top and bottom 10% (named HighCorr and LowCorr) of the first file.
I need to save this in the respective .txt file, and do the same with the rest of my folder.
Can someone help please?
11 个评论
Jorg Woehl
2021-3-24
Hi Bruno, I noticed that you use BaseFileName instead of FullFileName in the call to readmatrix.
Otherwise, would it be possible to provide some sample files for testing?
Bruno Carvalho
2021-3-24
Jan
2021-3-24
What does "with no luck so far" mean? We see the code. But what is the problem?
Bruno Carvalho
2021-3-24
Jan
2021-3-24
The code you have posted does this on all files inside a folder already. Therefore I do not understand, what you are asking for. Currently the code does not do anything with the results, but overwrites them in the next iteration. Is this your problem?
Bruno Carvalho
2021-3-24
Jan
2021-3-24
Suggestion for what? Do you want to collect the data in an array, or to modify the files?
Bruno Carvalho
2021-3-24
Jan
2021-3-24
What about:
SortedData = sortrows (Data, -5);
n = size(SortedData, 1);
Data = SortedData([1:10, 84:s], :);
writematrix(FullFileName, Data);
Bruno Carvalho
2021-3-24
Jan
2021-3-24
Then I will repost it as an answer.
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Variables 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!