首先,这对这里找到的代码有所改进:
//www.tatmou.com/matlabcentral/fileexchange/47055-cell-array-to-csv-file-improved-cell2csv-m.
积分为原始和以前的作者为他们建立的工作。
此更新功能:
- 急剧保存网络驱动器时提高性能(通过删除循环)
- 与以前的Cell2CSv.m相比,偶尔会提高对本地驱动器的性能
- 改进了对内置WriteCell()的性能
- 添加能够设置输出CSV文件的访问权限(写入,附加等)
- 增加设置浮点精度的能力(旧的Cell2CSV通常限制在%.4F,并且WriteCell始终是%.15F)
以下是我在计算机上录制的一些时间:
% 输入
>> x = [{'这个','','a','cell','time','test。'};num2cell([(1:50000)',rand(50000,5)])];
在网络上:
%与writecell相比
>> TIC;Cell2CSV('new_cell2csv.csv',x,'%.15f');TOC.
经过时间为20.277467秒。
>> TIC;writecell(x,'writecell.csv');TOC.
经过时间为20.393940秒。
与旧的Cell2CSV相比
>> TIC;Cell2CSV('new_cell2csv.csv',x);TOC.
经过时间是19.339022秒。
>> TIC;cell2csv('old_cell2csv.csv',x);TOC.
经过时间为123.579863秒。
在本地驱动器上:
%与writecell相比
>> TIC;Cell2CSV('new_cell2csv.csv',x,'%.15f');TOC.
经过时间为18.165537秒。
>> TIC;writecell(x,'writecell.csv');TOC.
经过时间为21.017945秒。
与旧的Cell2CSV相比
>> TIC;Cell2CSV('new_cell2csv.csv',x);TOC.
经过时间为17.986039秒。
>> TIC;cell2csv('old_cell2csv.csv',x);TOC.
经过时间为14.386261秒。
总的来说,这是一个胜利!
Gaetawoo(2021)。更快的单元格数组到CSV文件[更改进的Cell2CSv.m](//www.tatmou.com/matlabcentral/fileexchange/73240-faster-cell-array-to-csv-file-more-improved-cell2csv-m),matlab中央文件交换。检索到。