Textscan vs importdata
Afficher commentaires plus anciens
Hi,
I though textscan was faster than importdata but it seems to me that for bigger file importdata is faster. Any explanations?
Here is the code :
tic
raw1=importdata('185mo.csv');
toc
tic
fid = fopen('185mo.csv');
raw2 = textscan(fid, '%f %f %f', 'delimiter', ',', ...
'EmptyValue', -NaN,'HeaderLines',16);
fclose(fid);
toc
Here is the result :
Elapsed time is 30.462402 seconds.
Elapsed time is 38.665811 seconds.
4 commentaires
Oleg Komarov
le 14 Fév 2012
Consider that importdata uses textscan. I would suggest to go in debug mode to check what options they use, but I suspect it's the NaN padding.
Walter Roberson
le 14 Fév 2012
Interesting, I did not know that -NaN had a different representation than NaN, but it seems to (in R2008b at least)
>> sprintf('%16lx\n',typecast(nan,'uint64'))
ans =
fff8000000000000
>> sprintf('%16lx\n',typecast(-nan,'uint64'))
ans =
7ff8000000000000
Benoit
le 14 Fév 2012
Réponses (1)
xiangsheng guan
le 9 Juil 2012
0 votes
I find that importdata uses fread for .txt files. But I can access neither source file of fread nor textscan.
Catégories
En savoir plus sur Basic Domains dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!