COnvert 3d matrix to 2D

1 visualizzazione (ultimi 30 giorni)
Joana
Joana il 5 Dic 2019
Commentato: Star Strider il 5 Dic 2019
I have a matrix of x=1200x30x410, i need to change it to 2D as x=3600x410. How to do that.?
it gives an error by using reshape that 'Product of known dimensions, 410, not divisible into total number of elements, 3672000'

Risposte (1)

Star Strider
Star Strider il 5 Dic 2019
The reshaped matrix has to be (36000 x 410).
x = rand(1200,30,410); % Create Matrix
y = reshape(x,[],410);
You can reduce the first dimension afterwards, if necessary.
  2 Commenti
Joana
Joana il 5 Dic 2019
It doesn't work actually. Here's the x for example i need to change.
y should be equal to 6000x102
Star Strider
Star Strider il 5 Dic 2019
Please define ‘doesn’t work’.
It works for me:
D = load('matlab.mat');
x = D.x;
y = reshape(x, [], 102);
whos('y')
producing:
Name Size Bytes Class Attributes
y 6000x102 4896000 double

Accedi per commentare.

Categorie

Scopri di più su Resizing and Reshaping Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by