Utilizzo ciclo for per estrarre dati

di Anonimizzato19894 il
4 risposte
Salve a tutti

sono un neofita di matlab, vorrei qualche consiglio su come poter estrarre mediante un ciclo "for" una serie di vettori riga, per ogni riga di dati della matrice? Grazie

4 Risposte

  • Questo è lo script che ho provato a fare, ma non funziona

    T250=M(1:796,12:30);%Matrice temperature portata a 250(g/s)
    ST250=size(T250);
    for i=1:1:ST250(1)
    T250f(i)=T250(i,:);
    cont=1;
    end
  • Nel ciclo "for" che hai scitto, l'istruzione a destra del segno "="
    
    T250(i,:)
    
    ritorna effettivamente un vettore riga, ma l'istruzione a sinistra dell'"="
    
    T250f(i)
    
    identifica un singolo elemento del vettore "T250f".

    Da qui, il messaggio di errore che dovresti ricevere:
    In an assignment A(:) = B, the number of elements in A and B must be
    the same.
    Infatti l'istruzione "tenta" di assegnare un vettore riga (quindi con più di un elemento) ad una singola locazione di un altro vetore.

    Puoi modificare l'istruzione semplicemente eliminando "(i)"
    
    T250f=T250(i,:);
    
    In questo modo, ad ogni iterazione, "T250f" conterrà la "i-esima" riga della matrice "T250".

    Corretto l'errore, tieni presente che in questo modo, ad ogni iterazione il contenuto del vettore "T250f" viene sovrascritto.
  • Ciao,

    come si fa invece per non sovrascrivere ogni volta il file e crearne uno nuovo ad ogni iterazione??

    grazie mille in anticipo!
  • Quale file?
    Nei posts precedenti in si fa accenno a nessun file.
Devi accedere o registrarti per scrivere nel forum
4 risposte