Temel olarak, 10 veri dosyam var ve bu verileri işlemek için bir MATLAB işlevi yazdım. kod şu şekildedir:MATLAB'de bir dizeyi işlev argümanı olarak nasıl geçirebilirim?
function Z = fitdata(file_path)
A = importdata(file_path,',');
...
end
Ben girişine (farklı dosya adları için) aynı komutu 10 kez istemiyoruz beri, bu işlem otomatik hale getirmek için başka bir senaryo yazdı. Kod şöyle görünür:
function X = automate()
myarray = {'file_one', 'file_two', 'file_three',......,'file_ten'};
for i = 1:9
mypath = myarray{i};
W = fitdata(mypath);
...
end
end
Ama fitdata (dosya_yolu) işlevine çağrı at hata "Çok fazla giriş argüman" alıyorum.
Bunu nasıl yapmalıyım?
Hata için özür dilerim. Kodum 'importdata' idi. Ama yine de hatayı alıyorum. Matlab komut satırından fitdata ('file_one', ',') yazmayı bile denedim, ancak hata devam ediyor. – ablimit
Sözdiziminizle ilgili yanlış bir şey yok gibi görünüyor. Importdata() 'nın dosyanızda boğulmadığından emin misiniz? MATLAB komut satırında importdata ('my_file_1', ') 'seçeneğini deneyin. –
importdata() is OK. Bir dize gibi bir dosya bildirirseniz: file_path = 'filename' ve importdata (file_path, ',') çağrısı yapar. Tek sorun, bir dizeyi bir işleve argüman olarak iletmek olduğunu düşünüyorum. – ablimit