Filter löschen
Filter löschen

Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

Writing to CSV file help

1 Ansicht (letzte 30 Tage)
Rodriguez Pham
Rodriguez Pham am 16 Sep. 2015
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
So I have a CSV file with a list of variables with various assignments, so for example: *note these are each in on cell each
a = 5464,,,,,,,
b = 657578,0.46454,0,85976
c = 46,,,,,,
d = 45345
e = 0,5,6,8,,,,,,,
I want to filter the csv file so that it removes the ,,,,,, and then reformat this so that it will then become
a = 5464; b = 657578,0.46454,0,85976; c = 46; d = 45345; e = 0,5,6,8;
in once cell
I have the idea to use a regexp to filter the commas but I dont know how to filter it specifically.
  2 Kommentare
Walter Roberson
Walter Roberson am 17 Sep. 2015
When you say that they are in one cell each, do you mean one line each? Or do you mean that in the CSV file each of these expressions was enclosed in double-quotes "" to mark that the commas did not indicate the end of the value?
Rodriguez Pham
Rodriguez Pham am 17 Sep. 2015
Bearbeitet: Rodriguez Pham am 17 Sep. 2015
So when I load the csv file into the matlab workspace using uigetfile, then fopen, then textscan, the variable are in a cell type of a 5x1 vector. So when I apply my opperation the result I want is a 1x1 with all of the varibles in that specfic format where it follows the 5 variables in a line.
The goal for me is to understand the syntax to do this operation because I will have lets say a 100x1 with variables assigned but having this comma issue and I want to apply my operation so that it will end up as a 20x1 with 5 variables in each row but 'one cell' for each row which I will then write to a text file. Does that make sense?

Antworten (1)

Walter Roberson
Walter Roberson am 17 Sep. 2015
data = {'a = 5464,,,,,,,'; 'b = 657578,0.46454,0,85976'; 'c = 46,,,,,, '; 'd = 45345'; 'e = 0,5,6,8,,,,,,,'}
trimmed_data = regexprep(data, ',+\s*$', '');
joined_data = [strjoin(trimmed_data(:).', '; '), ';'];
  1 Kommentar
Kirby Fears
Kirby Fears am 18 Sep. 2015
Rodriguez,
Your answer is right here.

Diese Frage ist geschlossen.

Community Treasure Hunt

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

Start Hunting!

Translated by