fcell2csv - Fastest Cell Array to CSV-file
Version 1.1.0 (6,43 ko) par
wfH
writes nD cell array into a ASCII delimited file (e.g., *.csv) using c-mex.
I've found a series of functions (`cell2csv`) that writes cell array content in to a *.csv file.
All of these functions is inefficient to handle a large cell array (number of nows > 20000), and none can handle a nD cell array.
So, I created this function fcell2csv that adopts c-mex file to improve performance.
`fcell2csv` is about 40~90 times faster than the codes found in FEX !
NOTE!
The c-mex file is necessary.
Run the following code to compile.
mex cell2csv_mex.c -R2018a -O
Run the following code for comparison.
x = [{'This', 'is', 'a', 'cell', 'time', 'test.'}; num2cell([(1:50000)', rand(50000,5)])];
% Compare to built-in `writecell`/ `cell2csv`
tic; writecell(x, 'writecell.csv'); t1 = toc
tic; cell2csv('cell2csv.csv', x); t2 = toc % removing loop % https://www.mathworks.com/matlabcentral/fileexchange/73240-faster-cell-array-to-csv-file-more-improved-cell2csv-m
tic; cell2csv('cell2csv.csv', x); t3 = toc % https://www.mathworks.com/matlabcentral/fileexchange/47055-cell-array-to-csv-file-improved-cell2csv-m
tic; fcell2csv('fcell2csv.csv', x); t4 = toc % my c-mex
On my notebook (i7-8550u)
t1~33.127151 seconds
t2~8.365726 seconds
t3~11.168033 seconds
t4~0.513955 seconds
WIN!!
Citation pour cette source
wfH (2024). fcell2csv - Fastest Cell Array to CSV-file (https://www.mathworks.com/matlabcentral/fileexchange/102870-fcell2csv-fastest-cell-array-to-csv-file), MATLAB Central File Exchange. Extrait(e) le .
Compatibilité avec les versions de MATLAB
Créé avec
R2021b
Compatible avec les versions R2018a et ultérieures
Plateformes compatibles
Windows macOS LinuxTags
Remerciements
Inspiré par : mex_WriteMatrix, Faster Cell Array to CSV-file [more improved cell2csv.m], Cell Array to CSV-file [improved cell2csv.m]
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Découvrir Live Editor
Créez des scripts avec du code, des résultats et du texte formaté dans un même document exécutable.
Version | Publié le | Notes de version | |
---|---|---|---|
1.1.0 | feat: flexible input arguments
|
||
1.0.0 |