複数データのインポートと統合
21 ビュー (過去 30 日間)
古いコメントを表示
ある観測データがあり、1時間ごとにファイルが分かれており、ファイル名はそれぞれ異なっています。(ファイル名は連番ではないものもあります)
これらのファイルデータを全てインポートして、全データを統合して分析やplotを作成したいと思っていますが、どんなふうにしたら簡単にまとめられるか思いつきません…。
よい方法をご存知の方がいらっしゃいましたらご教示ください。
完成イメージはこんな形です。
0 件のコメント
採用された回答
Toru Ikegami
2021 年 8 月 27 日
編集済み: Toru Ikegami
2021 年 8 月 27 日
こんにちは,
読み込みたいファイルが全て 'dataFolder' という名前のフォルダに格納されているとすると,次の2行で,フォルダにある全てのファイルを読み込み,データを結合したテーブル変数 dataTbl を生成することができます.
ds = tabularTextDatastore('dataFolder');
dataTbl = readall(ds);
上の2行が基本になるのですが,フォルダの中の特定の拡張子を持つファイルのみを処理するとか,読み込む際のデータの型を指定するなど,様々なオプションを利用することが出来ます.「データストア入門」と,tabularTextDatastore のドキュメントを参考にされると良いと思います.
添付されていたファイルに対して有用かと思われるオプションをつけると次のようになるでしょうか.
ds = tabularTextDatastore('dataFolder','TextType','string','DatetimeLocale','ja_JP');
5 件のコメント
Toru Ikegami
2021 年 8 月 30 日
すみません.お伝えした例だと fileDataStore を構成する際に,ファイルの拡張子を指定していませんでした.以下試してみていただけますか?
ds = fileDataStore("dataFolder","ReadFcn",@(x) readtable(x,opt),...
"UniformRead",true,"FileExtensions","txt");
拡張子無指定ですと,フォルダ内にある全てのファイルを読み込むので,MATLABが生成する.DS_Store というファイルをも読み込んで,他のファイルから読み込んだデータと結合しようとします.この過程でエラーが発生すると考えられます.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で データのインポートとエクスポート についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!