Reshapes-MATLAB-Like-Python

Version 1.0.0 (1,74 ko) par Yintai
Reshape arrays row-wisely like python.
31 téléchargements
Mise à jour 1 mai 2023

MATLAB-Reshapes-Like-Python

Reshape arrays row-wisely like python.

RESHAPE(A, new_size)

Usage:

A is an array

new_size is an array represents the shape of the new n-dimensional matrix. [new_size_1, new_size_2, ..., new_size_n] The shape have to be compatable.

It will return the reshaped array. The computation time is propotional to the number of indices of the tensor, not the number of the elements.

Examples

In MATLAB

>> a = 1:6;
>> 
>> b = RESHAPE(a, [2,3])

b =

     1     2     3
     4     5     6

>> b = RESHAPE(a, [2,1,3])

b(:,:,1) =

     1
     4


b(:,:,2) =

     2
     5


b(:,:,3) =

     3
     6

>> b = RESHAPE(a, [2,3,1])

b =

     1     2     3
     4     5     6

>> a = RESHAPE(b, [1, 6])

a =

     1     2     3     4     5     6

>> 

The array is reshaped in matlab as in python, except the indices of matlab start with 1 while indices of python start with 0.

>>> import numpy as np
>>> a = np.linspace(1, 6, 6)
>>> b = a.reshape(2,3)
>>> b
array([[1., 2., 3.],
       [4., 5., 6.]])
>>> b = a.reshape(2,1,3)
>>> b
array([[[1., 2., 3.]],

       [[4., 5., 6.]]])
>>> b[:,:,1]
array([[2.],
       [5.]])
>>> b[:,:,0]
array([[1.],
       [4.]])
>>> b[:,:,2]
array([[3.],
       [6.]])
>>> b = a.reshape(2,3,1)
>>> b
array([[[1.],
        [2.],
        [3.]],

       [[4.],
        [5.],
        [6.]]])
>>> b[:,:,0]
array([[1., 2., 3.],
       [4., 5., 6.]])
>>> a = b.reshape(1, 6)
>>> a
array([[1., 2., 3., 4., 5., 6.]])

Citation pour cette source

Yintai (2026). Reshapes-MATLAB-Like-Python (https://github.com/zhangyintai/MATLAB-Reshapes-Like-Python), GitHub. Extrait(e) le .

Compatibilité avec les versions de MATLAB
Créé avec R2023a
Compatible avec toutes les versions
Plateformes compatibles
Windows macOS Linux
Tags Ajouter des tags

Les versions qui utilisent la branche GitHub par défaut ne peuvent pas être téléchargées

Version Publié le Notes de version
1.0.0

Pour consulter ou signaler des problèmes liés à ce module complémentaire GitHub, accédez au dépôt GitHub.
Pour consulter ou signaler des problèmes liés à ce module complémentaire GitHub, accédez au dépôt GitHub.