Calcola un vettore di mini da una matrice 2 dimensionaleSto cercando un metodo semplice per prendere una matrice 2xn e produrre un vettore in cui ogni elemento nel vettore è il valore minimo per ogni riga nella matrice 2xn
a=[ 1 4, 3 2, 5 6]
// the final result needs to be
[1, 2, 5]
Il ciclo attraverso la matrice "a" può facilmente farlo, ma ...... Spero che qualcuno là fuori abbia più fluidità nelle matrici che potrebbero avere una soluzione più efficiente
Tabella datiScriptingRi: Calcola un vettore di mini da una matrice 2 dimensionaleCiao Jim,
m = [1 4, 3 2, 5 6];
v = Transpose( V Min( Transpose( m ) ) ); // VMin( m`)`
Ri: Calcola un vettore di mini da una matrice 2 dimensionaleeccellente...Ri: Calcola un vettore di mini da una matrice 2 dimensionaleSapevo che c'era una funzione ma non riuscivo a trovarla, quindi l'ho fatta passo dopo passo usando le operazioni a matrice. Touché @ gzmorgan0 !
Names Default to Here( 1 );
// define 2xn data matrix
a = [ 1 4, 3 2, 5 6];
// compute row-wise differences as a vector
b = a[0,1] - a[0,2];
// determine deficit in first column of data matrix
c = b < 0;
// determine deficit in second column of data matrix
d = !c;
// create conforming matrix of deficits
e = c || d;
// multiply to get minimum value
f = a * e`;
// extract minimum value from diagonal elements
Vec Diag( f );
Dubito che la mia strada sia più efficiente dell'iterare sulle righe della matrice di dati. Sono sicuro che non è più efficiente di V Min ()!
Ri: Calcola un vettore di mini da una matrice 2 dimensionaleQuesto insieme di funzioni funziona sulla dimensione verticale di una matrice e può utilizzare la stessa tecnica per ottenere una versione orizzontale.
indice di scripting che esamina le funzioni che iniziano con V
Ri: Calcola un vettore di mini da una matrice 2 dimensionaleWow! Spero tu lo stia facendo @DonMcCormack 'S sfide ! Ho ancora bisogno di lavorarci un po 'di più.