2

「.txt」拡張子を含むすべてのファイルのディレクトリを検索し、それらのファイルに対して特定の数式を実行するには、Matlab R2013a を取得する必要があります。その後、スクリプトは入力ファイルと同じ名前のラベルが付いたファイルにデータを出力する必要があります。ただし、次のように、違いがわかるように新しい単語がいくつか追加されています。

Input:
file1.txt
file2.txt
Output: 
processed_file1.txt
...etc

私はmatlabにディレクトリリストをロードさせ、そのように操作を介してファイルをループさせようとしましたが、フォルダー内の数百ではなく、単一のファイルの出力しか取得していません。助けてくれてありがとう。

4

1 に答える 1

5

それほど難しくありません。「処理済み」フォルダを作成してそこに保存するだけです。自由に使える MATLAB の組み込みシェルを忘れないでください。次のコードで最も重要な行は、最初の 2 行と次のfilename行です。新しいフォルダーを作成し (1 行目)、.txt の内容を struct という名前で読み取りdata(2 行目)、ファイル名を取得します。filenameファイルを開いて別のループで保存する必要がある場合は、配列を簡単に作成できることに注意してください。

mkdir processed     
data = dir('*.txt');   

for i = 1:length(data)
    filename = data(i).name; 

    % read data and do your processing
    % then save with something like:

    fid = fopen(['processed\' filename],'w'); 
    fprintf(...)   
    fid = fclose(fid);
end
于 2013-07-19T19:00:30.260 に答える