MATLAB Answers

how can I read huge asc files with textread?

1 view (last 30 days)
Honey
Honey on 14 Feb 2020
Commented: Honey on 14 Feb 2020
Hello everyone,
I want to read a huge .asc file wich are climate daily data. The file's name are according to the date.
for example this is "ppt_19990101_asc". I have also leap years in my data. How can I read these files and arange them in 1*366 matlab cell?
thanks in advance.

  0 Comments

Sign in to comment.

Answers (1)

Bhaskar R
Bhaskar R on 14 Feb 2020
Edited: Bhaskar R on 14 Feb 2020
Get file names and apply
ext_date = datetime(extractBetween(<your file name(here ppt_19990101_asc)>, '_', '_'), 'Format', 'yyyyMMdd');
Then read each file using textread according to your data

  2 Comments

Honey
Honey on 14 Feb 2020
years = 15;
DATA = cell(years);
for yy = 1:n;
year = 1998+yy-1;
for month=1:12
if mod(year,4)==0 & (mod(year,100)~=0 & month ==2 | mod(year,400)==0) & month ==2
for Day = 1:29;
if Day<=9
P = textread(sprintf('ppt_%i020%i_asc.asc',year,year, Day),'','headerlines',6);
else
P = textread(sprintf('ppt_%i02%i_asc.asc',year,year, Day),'','headerlines',6);
end
end
elseif month==4 | month==6 | month==9 | month==11
for Day = 1:30;
if month<=9 & Day<=9
P= textread(sprintf('ppt_%i0%i0%i_asc.asc',year,year,month, Day),'','headerlines',6);
Honey
Honey on 14 Feb 2020
thank you "Bhaskar R" for your answer. here is a part of my long code which I wrote it. I mean this kind of calling data to recognize leap years and date.

Sign in to comment.

Sign in to answer this question.

Products


Release

R2019b