Come calcolare il valore medio di alcuni valori di una matrice

di il
3 risposte

Come calcolare il valore medio di alcuni valori di una matrice

Buongiorno,

avrei bisogno di una mano con matlab.. Ho  una matrice A(85,3) per la quale voglio creare una seconda matrice B che abbia come valori i valori medi dati da 5 valori della matrice A presi in ordine. 

Nella posizione B(1,1)  deve ad esempio avere il valore medio di (1:5,1) della A; 

nella posizione B(1,2) deve avere il valore medio di (6:10,1) della A;

nella posizione B(1,3) deve avere il valore medio di (11:15,1) della A;

e così per tutta la prima colonna verticale di A per poi implementarla per le altre due colonne della matrice A generando una matrice B finale del tipo B(17,3)

ho provato con un ciclo for ma me lo calcola solo per alcuni valori.

Grazie mille a tutti 

3 Risposte

  • Re: Come calcolare il valore medio di alcuni valori di una matrice

    Prova a vedere se questo ha senso

    >> inizio=[1:85*3];%Valori a caso iniziali
    >> inizio=reshape (inizio, 85, 3);%Ora siamo nella situazione che hai descritto
    >> %Aprendo vedo che il vettore iniziale si è sistemato in colonna
    >> inizio[1:5,1]
     inizio[1:5,1]
           ?
    Invalid expression. When calling a function or indexing a variable, use parentheses. Otherwise, check for
    mismatched delimiters.
     
    >> inizio(1:5,1)
    
    ans =
    
         1
         2
         3
         4
         5
    
    >> %Nell'esempio tu chiedi che sia fatta la media di gruppi da 5 elementi in una matrice con 225 elementi 
    >> %Quindi un numero di elementi divisibile per 5
    >> quintine=reshape(inizio, 5, 85*3/5);
    >> %Quintine è una matrice in cui ogni colonna contiene 5 elementi di inizio, in ordine
    >> mean(quintine);
    >> sum(quintine);
    >> risultato=mean(quintine);
    >> %Risultato è una matrice 1*51 in cui ogni elemento contiene la media della corrispondente quintina
  • Re: Come calcolare il valore medio di alcuni valori di una matrice

    In Julia :

    using Statistics;
    
    v=range(0,step=5,stop=80);
    A=rand(85,3)
    n_cols=size(A,2)
    B= zeros(17,n_cols)
    
    for i in 1:n_cols
        z=0
        for j in v
             z=z+1
             B[z,i]=mean(A[j+1:j+5,i])
                 
        end
    end 
    B

    Calcoli scientifici con Julia : link rimosso

  • Re: Come calcolare il valore medio di alcuni valori di una matrice

    Il codice funziona esattamente così in Matlab?

    Perché questa è la sezione di Matlab. Tu non puoi farla dIventare la sezione di Julia

Devi accedere o registrarti per scrivere nel forum
3 risposte