/ / Salva l'output nel file - matlab - excel, matlab

Salva l'output nel file - matlab - excel, matlab

Ho un codice che sto usando più e più volte nvolte in un ciclo for, quindi tengo fprintfing di circa 10 righe sulla finestra di comando per ognuna delle n corse attraverso questo ciclo. A volte l'output è troppo lungo per la finestra di comando. Qualcuno potrebbe forse dirmi come avere questa uscita continuamente postata su un file Excel? L'unico problema che prevedo è che poiché è un ciclo for che stampa diversi risultati dopo ogni esecuzione attraverso il ciclo, avrei bisogno del diverso output per continuare a postare su linee diverse del file excel.

risposte:

1 per risposta № 1

Puoi esportarlo direttamente su Excel:

excel_header={"header1","header2","header3"};
warning("off","MATLAB:xlswrite:AddSheet")
filename = "testdata.xlsx";
xlswrite(filename,excel_header,"SheetName","A1:C1");

Nota che se i tuoi dati hanno una lunghezza diversa in ogni iterazione, puoi costruire gli intervalli dinamicamente (es .: una colonna di dimensioni variabili):

excel_range_dynamic=["A1:A" num2str(data_length)];

In alternativa puoi esportare i tuoi dati in qualsiasi file .txt o .csv (che può essere successivamente aperto con Excel):

%Save to txt file
fi=fopen("test.txt","w");
fprintf(fi,"%s n",str1); %str1 is any string you have defined
fprintf(fi,"%sn%sn%sn",str2{:}); %str2 is a cell containing several strings
fclose(fi);

Puoi leggere di più su fprintf formati Qui.