How to create a .mat file

29 Ansichten (letzte 30 Tage)
Thomas
Thomas am 22 Jul. 2019
Kommentiert: V Prakash am 6 Nov. 2020
Hello,
I've been searching for clues in order to solve my problem but couldn't find anything and since I just start with Matlab, I'm a bit lost.
Here's the thing :
I need to create a .mat file which would contain the following arrays :
  • lattitude (1-10980)
  • longitude (ID)
  • time (43 dates)
  • the data (10980,10980,43)
The data are Sentinel 2 images (.tif) that I would like to stack in order to conduct Time Series analyses.
The script I've been provided with is EOF, and the data they use in their example are organised as previously (only, with less data).
Since I'm not familiar with .mat files, I think I only understood that they are organised like .nc or .hdf files (might not be though).
Anyway, even if they are, I clearly can't tell how to end up with my arrays organised like that.
Could somebody help ?
Thank you.
  2 Kommentare
Stephen23
Stephen23 am 22 Jul. 2019
Bearbeitet: Stephen23 am 22 Jul. 2019
"The script I've been provided with is EOF, and the data they use in their example are organised as previously (only, with less data)."
What does this mean ?
What do the tags "eof" (End Of File?) and "stack" refer to?
Thomas
Thomas am 22 Jul. 2019
Bearbeitet: Thomas am 22 Jul. 2019
EOF is a method of Time series analyse and stands for Empirical Orthogonal Functions. It allows the user to decompose the trends in his data according to its variance. The stack well... I mean by this organise my satellite images in a cube. A 3D matrix with y=latitude, x=longitude and z=temporal evolution of the quantified data in each image whatever it is.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Stephen23
Stephen23 am 22 Jul. 2019
Bearbeitet: Stephen23 am 22 Jul. 2019
"How to create a .mat file"
Use save, which is the MATLAB command explicitly designed to write .mat files.
"I need to create a .mat file which would contain the following arrays..."
That is easy using save:
lat = [...]
lon = [...]
time = [...]
data = [...]
save('myFile.mat','lat','lon','time','data')
  2 Kommentare
Thomas
Thomas am 22 Jul. 2019
Thank you !
V Prakash
V Prakash am 6 Nov. 2020
Thank Thomas and Stephen for your answers. I think it will helpful for small data. How could it work for large dataset with more parameters? Is there any command to work with large dataset? Comment if any.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte


Version

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by