Effacer les filtres
Effacer les filtres

Higher rank tensor: how to export and read it as a file?

5 vues (au cours des 30 derniers jours)
Philipp
Philipp le 7 Juin 2023
Commenté : Divyam le 8 Juin 2023
Hello,
I have a rank-3 tensor, say simply
tensor=zeros(dA,dB,dC);
where dA, dB and dC are the respective dimensions. I like to export it as a file and later on import it again to continue some calculation in another Matlab script. How do I do this? As far as I see, dlmwrite, cswwrite and writematrix only work for matrices and give me some error saying "transpose not defined...".
Many thanks!

Réponses (1)

Divyam
Divyam le 7 Juin 2023
If you have access to the tensor toolbox, you can simply use the export_data function to export the tensor data and save it to a file. The following command should work in your case.
export_data(tensor, "tensor_data.tensor")
For more information on exporting and importing tensor data using the tensor toolbox, you can refer to this article: Importing and Exporting Tensor Data (tensortoolbox.com)
  2 commentaires
Philipp
Philipp le 7 Juin 2023
Unfortunately I do not have access to the tensor toolbox as I am using Octave... :(
Anyway, I found out that I can use the reshape command as follows:
tensor_new = reshape(tensor,[dA*dB,dC])
then export tensor2 and after importing it again convert back via
tensor = reshape(tensornew,[dA,dB,dC]))
That seems to work well. :) Hopefully, I am not overseeing something...
Divyam
Divyam le 8 Juin 2023
@Philipp that should work well, there shouldn't be any issues with converting a tensor to an array. I dont think that you are overseeing something just keep the dimensions in check.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Data Import and Export dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by