24/08/2019, 07:31
24/08/2019, 14:39
24/08/2019, 21:44
inputs = [input1; input2; input3; input4];
inputs(:, 1)
e il primo vettore sarà inputs(1, : )
.inputs(inputs > 0)
per ottenere tutti gli elementi positivi del tuo vettore. Dopodiché funzioni come mean
che restituiscono la media di un vettore, funzionano anche su matrici e array multidimensionali. Il seguente codice dovrebbe quindi restituire il vettore T:inputs = [input1; input2; input3; input4];
T = sum(inputs .* (inputs>0))./sum(inputs>0);
inputs(inputs > 0)
restituisce un vettore monodimensionale con gli elementi e non una matrice. In effetti la versione corretta consiste nel moltiplicare inputs
e inputs>0
in questo caso. Questo secondo vettore contiene infatti 1 nelle posizioni in cui la condizione è verificata e 0 altrimenti per cui moltiplicando insieme (component-wise..) le due matrici ottieni una matrice con zero nelle posizioni in cui l'elemento era negativo e il valore altrimenti. In modo simile non puoi usare mean perché considererebbe gli zero nella media, per cui è necessario implementarlo direttamente con sum
04/09/2019, 08:08
Skuola.net News è una testata giornalistica iscritta al Registro degli Operatori della Comunicazione.
Registrazione: n° 20792 del 23/12/2010.
©2000—
Skuola Network s.r.l. Tutti i diritti riservati. — P.I. 10404470014.
Powered by phpBB © phpBB Group - Privacy policy - Cookie privacy
phpBB Mobile / SEO by Artodia.