Do anyone know how to merge several (80-90) csv file data into 1 file?

I have to merge data from several csv files into one csv file and find the maximum value of each column.
How shall I do it?

 Réponse acceptée

Argon
Argon le 1 Nov 2012
Modifié(e) : Argon le 1 Nov 2012
Assuming that all files have the same columns I'd do something like this:
  • where ncols is number of columns
  • preallocate max value variable: m = zeros(1, ncols);
  • loop over all files
  • read csv data using csvread into variable data
  • m = max(max(data), m);
  • end loop
m of course is your result.

5 commentaires

Raj Shankar
Raj Shankar le 1 Nov 2012
Modifié(e) : Raj Shankar le 1 Nov 2012
Mr. Argon
I have many csv files in a folder. So how should I read all of them and put into one csv file?
Could you explain me a little bit more?
If you just need the maximum of each column, you don't have to load them all at the same time. Just get the maxima of each file first, and then get the maxima of all the maxima. Which is almost what I've written in my answer -- except there the maxima of the maxima is updated after every file is read.
You could of course also just read all files using csvread into one huge matrix and then get the maximum once, but if your files are large that would just slow down your code unnecessarily...
Raj Shankar
Raj Shankar le 1 Nov 2012
Modifié(e) : Raj Shankar le 2 Nov 2012
Yes Mr.Argon. That is what I want. I want to know how could I read all the csv files at once into one.
Please tell me the matlab function to read all the csv files available in a folder into one csv file.
Please.
There is not "one" function that does that as far as I know -- you will probably have to iterate over all your files and use csvread and write them to disk again, something like this:
files = {'file1.csv', 'file2.csv'};
cellfun(@(x) dlmwrite('output.csv', csvread(x), '-append'), files);
Though you might have to tweak that a bit, it hasn't been tested.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by