Question
Hello, I would like to save a Matlab table (first column strings, the rest are floating numbers) to a csv in the shortG format. I have set the format in my script and when I look at the table in the program, it looks just as it should. However, when I save the table to a csv file, the numbers increase their decimal places counts suddenly, forbidding numbers like -6.0247e-06 etc. How to overcome this, please?
Expert Answer
Prashant Kumar
PhD Expert
Answered Aug 24, 2026
Here is one approach that gives exactly the shortG format in your CSV file:
format long G
M = rand(3,5);
M(1) = -6.0247123456789e-06
M = 3x5
-6.0247123456789e-06 0.197674571707108 0.0250170842766982 0.310389529607936 0.506567531163724
0.908509002122202 0.204247079115749 0.25809728620882 0.771847731508226 0.391636786365166
0.245969238812545 0.0773711174826793 0.563422695499417 0.0640169158863244
F = @(v)formattedDisplayText(v,'NumericFormat','shortG');
S = regexprep(arrayfun(F,M),{'\s+','\.{3}'},'');
writelines(join(S,','),'mytest.csv')
Checking the file content:
type mytest.csv
-6.0247e-06,0.19767,0.025017,0.31039,0.50657 0.90851,0.20425,0.2581,0.77185,0.39164 0.24597,0.077371,0.56342,0.064017,0.34593
100% Run Guarantee
3-Hour Fast-Track Delivery
Need a Custom Version or Complete Simulation for This Problem?
Our 500+ PhD engineers build, debug, and optimize working MATLAB scripts and Simulink (.slx) models tailored to your exact assignment rubrics with zero plagiarism.
Tested on MATLAB R2024b / R2026a
Turnitin 0% Plagiarism Report
Free 7-Day Revisions Guarantee
Have a different question? Ask here
Related csv Questions & Solutions
Browse All →
Explore similar technical troubleshooting questions and verified MATLAB solutions:
Ready-to-Run MATLAB & Simulink Projects
Browse All Projects →