Fastest way to read in large mixed text file?

조회 수: 2 (최근 30일)
K E
K E 2016년 11월 4일
답변: Star Strider 2016년 11월 4일
I have an ASCII file with 300000 lines with the following format:
01-01-1979T00:00:00 722816.000000 128.783100 0.027240 0.000000 2.212400 1.535800 290.701000 2.570600 0.941000
I would like to read the lines in as follows:
  • Column 1 skip
  • Column 2 read in as number (actually datenum times)
  • Columns 3-10 read in as numbers
I can read this in using textscan thanks to code generated by the Matlab file import tool, but am wondering if there is a faster way.

답변 (1개)

Star Strider
Star Strider 2016년 11월 4일
You can easily write your own textscan call:
fidi = fopen('filename.txt',rt');
data = textscan(fidi, ['%*s' repmat('%f',1,9)], 'CollectOutput'1);
See the documentation for textscan for other options and name-value pair arguments you may need to read your file.
NOTE I do not have your file to test with it, so this is UNTESTED CODE.

카테고리

Help CenterFile Exchange에서 Text Files에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by