CSVファイルをダブ​ルクリックで開く時の​区切り文字の標準設定

8 views (last 30 days)
知輝 島本
知輝 島本 on 31 Oct 2022
Commented: Hernia Baby on 1 Nov 2022
Matlabで参照しているフォルダ内にあるCSVファイルをダブルクリック等で開く時、CSVファイルを開いているにもかかわらず区切り文字の設定がされていない(インポートタブの列区切り文字の欄には、「区切り文字」とだけ記載されている)ためか、20列ほどあるCSVファイルが3列にまとめられて表示されます。
テーブルとしてインポートしようとしても、Var1,Var2,Var3とされてしまいうまくいきません。
以前までは、同じ条件で計測器から出力したCSVファイルでも、自動でコンマ区切りしておりうまく取り込むことが可能でした。
このような時に標準として用いる区切り記号を設定することは可能でしょうか。
DetectImportOptionsで無理やり
opts = detectImportOptions(flist(i).name,"Delimiter",",");
としてコンマ区切りで読み込むことも可能でしたが、SelectedVariableNamesがVar1~Var20となってしまうことや、以前までは自動で削除されていたファイル上部の計測器の設定といった不要な行が残ってしまうため不便です。
どうかよろしくお願いいたします。

Answers (1)

Hernia Baby
Hernia Baby on 31 Oct 2022
インポートツールの設定をいじってみてはいかがでしょうか?
  3 Comments
知輝 島本
知輝 島本 on 31 Oct 2022
回答ありがとうございます。
閲覧する分にはインポートツールから操作すれば良いですね。CSVを読み込んでいることはMatlab側で把握している(インポートオプションを出力したとき、Delimitedtextimportoptions関数を用いていた)ようですが、自動でコンマ区切りにしてくれなかったので困惑しておりました。
結局、インポートオプションを色々といじることで強引に必要な形式で読み込ませることができました。
恐らく、入力CSVの内部データが見た目では何も問題ないように見えても実は問題があったのかなと思っています。
Hernia Baby
Hernia Baby on 1 Nov 2022
返信ありがとうございます。解決したとのことで何よりです。
自分も同様のケースに直面したことがあり、お気持ちよくわかります。
スペースがタブになっていたり等で見えない記入があることが原因であることがままあります。
----
他の方への参考にオプション設定例を記入しておきます。
opts = delimitedTextImportOptions;
% 範囲と区切り記号の指定
opts.DataLines = [2, Inf]; % 何行から読み込む?
opts.Delimiter = ["\t", " ", ","]; % 区切る記号は何?

Sign in to comment.

Tags

Products


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!