You are now following this Submission
- You will see updates in your followed content feed
- You may receive emails, depending on your communication preferences
When exporting a matrix of numbers for display in another program (eg. using xlswrite()), it may be useful to apply a format, such as limiting the number of decimals or adding external commands.
matlab limitations:
- xlswrite() does not have a format option.
- num2str() converts a row into a single string, which exports as one character per cell.
- num2str() can't be applied to a cell array.
This simple function converts each element to a character cell in an array using arrayfun() and a nested function that applies the format string with num2str().
Option: add the optional argument 'sparse' to convert 0 values to blank cells using cellfun() and a nested function.
The nested functions use variables available to the parent function.
sample run:
A = rand(3,5); A(2,1:3) = 0; % table with a few 0 values
txtA = makeTextTable(A,'%.2f'); % convert to text with 2 decimals
txtA = makeTextTable(A,'%.2f','sparse'); % convert to text with 2 decimals (no zeros)
Cite As
Renee (2026). Converting a matrix to formatted text (https://www.mathworks.com/matlabcentral/fileexchange/37169-converting-a-matrix-to-formatted-text), MATLAB Central File Exchange. Retrieved .
General Information
- Version 1.0.0.0 (1.35 KB)
MATLAB Release Compatibility
- Compatible with any release
Platform Compatibility
- Windows
- macOS
- Linux
| Version | Published | Release Notes | Action |
|---|---|---|---|
| 1.0.0.0 |
