Function to pull 110 years of data from .nc files?
古いコメントを表示
I'm trying to write a function that does the following:
metdriver=ncread('shtfl.2006.nc', 'shtfl');
but for my entire 110 year dataset(1900-2010).
Ideally the end result would be:
metdriveryear, with that year's data.
Any ideas? I'm new to .nc files, and it's taking some rethinking. Thanks a bunch!
回答 (1 件)
Sean de Wolski
2013 年 6 月 25 日
1 投票
8 件のコメント
Kate
2013 年 6 月 25 日
Sean de Wolski
2013 年 6 月 25 日
Stack the variables from each file into a cell-array. Then concatenate it.
So you right now have 110 files
shtf1.1900.c, shtf2.1901.nc
etc. right? And you need to grab a variable from each and store it?
Kate
2013 年 6 月 25 日
Kate
2013 年 6 月 25 日
Kate
2013 年 6 月 25 日
Sean de Wolski
2013 年 6 月 25 日
Yes, so you'll want to use a cell-array. For example:
metdrivers = cell(110,1); %empty cell
years = 1900:2009
for ii = 1:110
metdrivers{ii} = ncread(['shtf1.' num2str(years(ii)) '.nc'],'shtf1');
end
Now you have a variable metdrivers that has all of the data for all of the years.
If you want the one for year 1900:
metdrivers{1}
With this you can then do anything!
Sean de Wolski
2013 年 6 月 25 日
ps. this is pretty much exactly what the FAQ discusses.
Tanmoyee Bhattacharya
2016 年 3 月 22 日
I have a same question.I have daily nc files reading like this ncread('\','RF'); Now the name is 3B42_daily.1999.01.01.7.nc,3B42_daily.1999.01.02.7.nc,3B42_daily.1999.01.03.7.nc like that 2015.10.31.7.nc. In above code by Sean de Wolski what we have to change.
カテゴリ
ヘルプ センター および File Exchange で Time Series Events についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!