permute
Permutare le dimensioni degli array
Sintassi
Descrizione
B = permute(
riorganizza le dimensioni di un array nell'ordine specificato dal vettore A
,dimorder
)dimorder
. Ad esempio, permute(A,[2 1])
scambia le dimensioni delle righe e delle colonne di una matrice A
. In generale, la i-esima dimensione dell'array di output è la dimensione dimorder(i)
dell'array di input.
Esempi
Array tridimensionale
Creare un array 3x4x2 e permutarlo in modo da scambiare la prima e la terza dimensione, ottenendo così un array 2x4x3.
rng default
A = rand(3,4,2)
A = A(:,:,1) = 0.8147 0.9134 0.2785 0.9649 0.9058 0.6324 0.5469 0.1576 0.1270 0.0975 0.9575 0.9706 A(:,:,2) = 0.9572 0.1419 0.7922 0.0357 0.4854 0.4218 0.9595 0.8491 0.8003 0.9157 0.6557 0.9340
B = permute(A,[3 2 1])
B = B(:,:,1) = 0.8147 0.9134 0.2785 0.9649 0.9572 0.1419 0.7922 0.0357 B(:,:,2) = 0.9058 0.6324 0.5469 0.1576 0.4854 0.4218 0.9595 0.8491 B(:,:,3) = 0.1270 0.0975 0.9575 0.9706 0.8003 0.9157 0.6557 0.9340
szB = size(B)
szB = 1×3
2 4 3
Argomenti di input
A
— Array di input
vettore | matrice | array multidimensionale
Array di input, specificato come vettore, matrice o array multidimensionale.
dimorder
— Ordine delle dimensioni
vettore riga
Ordine delle dimensioni, specificato come vettore riga con elementi interi unici e positivi che rappresentano le dimensioni dell'array di input.
Funzionalità estese
Tall array
Esegui calcoli con array che hanno più righe di quelle allocabili in memoria.
Questa funzione supporta i tall array con la seguente limitazione:
La permutazione della dimensione tall (dimensione uno) non è supportata.
Per maggiori informazioni, vedere Tall Arrays for Out-of-Memory Data.
Generazione di codice C/C++
Genera codice C e C++ con MATLAB® Coder™.
Note su utilizzo e limitazioni:
L’ordine delle dimensioni deve essere costante in tempo di compilazione per gli input di array di celle eterogenei. Per maggiori informazioni, vedere Code Generation for Cell Arrays (MATLAB Coder).
Vedere Variable-Sizing Restrictions for Code Generation of Toolbox Functions (MATLAB Coder).
Ambiente basato su thread
Esegui il codice in background usando MATLAB® backgroundPool
oppure accelera il codice con Parallel Computing Toolbox™ ThreadPool
.
Questa funzione supporta completamente gli ambienti basati su thread. Per maggiori informazioni, vedere Run MATLAB Functions in Thread-Based Environment.
Array GPU
Accelera il codice mediante esecuzione su un’unità di elaborazione grafica (GPU) con Parallel Computing Toolbox™.
Questa funzione supporta completamente gli array di GPU. Per maggiori informazioni, vedere Run MATLAB Functions on a GPU (Parallel Computing Toolbox).
Array distribuiti
Partiziona array di grandi dimensioni nella memoria combinata del cluster con Parallel Computing Toolbox™.
Questa funzione supporta completamente gli array distribuiti. Per maggiori informazioni, vedere Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox).
Cronologia versioni
Introduzione prima di R2006aR2019b: Errore prodotto da argomenti dell'ordine di dimensione non intera o complessa
A partire dalla release R2019b, la sintassi permute(A,dimorder)
produce un errore quando dimorder
è un valore non intero o complesso. Specificare invece valori interi reali e positivi per dimorder
.
Comando MATLAB
Hai fatto clic su un collegamento che corrisponde a questo comando MATLAB:
Esegui il comando inserendolo nella finestra di comando MATLAB. I browser web non supportano i comandi MATLAB.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)