Extracting a timeseries of x,y values from a series of .asc files
7 次查看(过去 30 天)
显示 更早的评论
Hi,
I have what I think is a very simple Matlab problem. I need to extract the value of an x,y cell in a series of .asc grid files, and write these values to a matrix.
A more detailed description. I have a grid of values that represent a spatial domain, and each value in the grid represents a meteorological parameter like temperature. Each .asc grid file represents a day. So each file is a grid of daily temperature. I need to write a matlab script that will go through each file (each day), go to a specified row,column in the grid, pull out the value, and then create a time series of the values.
My files are saved in the format: Tair.YYYY.MM.DD.asc. They have a header with 6 lines at top. Tair is air temperature, swe_depth is snow depth. hogg is the name of the met station. (550,21) is the row/column I am interested in.
Here is what I think should work:
a=dir('Tair*.asc'); s=dir('swe_depth*.asc');
for i=1:length(a) Air = textread(a(i).name,'',-1,'headerlines',6); swe = textread(s(i).name,'',-1,'headerlines',6);
hogg(i,1) = Air(550,21);
hogg(i,2) = swe(550,21);
end
This works, but I end up with a 31x31 matrix instead of a 31x2 matrix which is what I want.
Also, I know that this should be done using arcgridread or maybe textscan, if anyone wants to suggest how to do it better using one of those two functions I am all ears!
0 个评论
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Large Files and Big Data 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!