Hi Craig, see the "array" method for ?brick:
brick(x, xmn=0, xmx=1, ymn=0, ymx=1, crs=NA
So, something like
x <- brick(test$data[[2], xmn = min(test$data[[5]]), ymx =
max(test$data[[5]]), ymn = min(test$data[[4]]), ymx = max(test$data[[4]]))
You might need to mess around to get the x/y ranges right, and figure out
if you need to transpose or do other reorientations. This assumes the
lon/lat vectors are regular so you should check that.
Cheers, Mike
On Thu, Apr 4, 2013 at 9:00 AM, cmundy <
Hi All,
I have been provided with a .mat file containing a time series of Sea
Surface Temperature data (50 x 42 cells with 92 time layers). It was a
"Struct" object in Matlab. I can happily import the file in to R using
R.matlab, creating a list as follows. My question is how then to convert
this to a raster brick?
Thanks
Craig
library(R.matlab)
test <- readMat("CraigMundy.mat")
str(test)
List of 2
$ data :List of 9
..$ : num [1, 1:92] 734138 734139 734140 734141 734142 ...
..$ : num [1:50, 1:42, 1:92] 14.4 14.5 15.2 15.3 14.8 ...
..$ : num [1:50, 1] -44.3 -44.3 -44.3 -44.2 -44.2 ...
..$ : num [1, 1:42] 147 147 147 147 147 ...
..$ : num [1, 1] 101
..$ : chr [1, 1] " SST: 3 Day Composite"
..$ : num [1, 1] 0
..$ : num [1, 1] 34.5
..$ : num [1, 1] 0.44
..- attr(*, "dim")= int [1:3] 9 1 1
..- attr(*, "dimnames")=List of 3
.. ..$ : chr [1:9] "Time" "Values" "Lat" "Long" ...
.. ..$ : NULL
.. ..$ : NULL
$ times: chr [1:92, 1] "31-Dec-2009" "01-Jan-2010" "02-Jan-2010"
"03-Jan-2010" ...
- attr(*, "header")=List of 3
..$ description: chr "MATLAB 5.0 MAT-file, Platform: PCWIN64, Created
on:
Thu Apr 04 11:29:53 2013 "
..$ version : chr "5"
..$ endian : chr "little"