Modifica txt elinando operatore +

di il
2 risposte

Modifica txt elinando operatore +

Ciao a tutti,
non uso Matlab da un po' quindi sono piuttosto arruginita.
Come da titolo dovrei importare un file txt del tipo
-0.001193 + 0.002111i
-0.007316 + 0.012604i
0.011467 + -0.020127i
0.012250 + -0.020879i
Vorrei generare una matrice nrighe e 2 colonne, eliminando pertando il "+" e possibilmente anche la "i".

Mi dareste una mano?

2 Risposte

  • Re: Modifica txt elinando operatore +

    Una possibile soluzione potrebbe essere:
    [*] leggere il file con la funzione "textscan" allocandone il contenuto in un cellarray
    [*] eliminare gli elementi del cellarray corrispondenti al segno "+" (con l'operatore []"
    [*] eliminare la "i" con la funzione strrep
    [*] convertire i rimanenti elementi del cellarray da stringa di caratteri a numero
    
    fp=fopen('in_1.txt','rt')
    x=textscan(fp,'%s')
    fclose(fp)
    
    n=x{1}
    n(2:3:end)=[]
    n=strrep(n,'i','')
    n1=[str2num(char(n(1:2:end))) str2num(char(n(2:2:end)))]
    
    
  • Re: Modifica txt elinando operatore +

    Grazie mille!!!
Devi accedere o registrarti per scrivere nel forum
2 risposte