データの読み込みに関する初心者的質問です。

7 views (last 30 days)
直暉 松原
直暉 松原 on 14 Oct 2022
Edited: Hernia Baby on 14 Oct 2022
一列のCSVデータの読み込みで、読み込み始める行を指定できないでしょうか?
写真の様なデータの6行目から最後まで、を読み込む感じです。
簡単な質問だと思いますが、ご指導よろしくお願いいたします。

Answers (1)

Hernia Baby
Hernia Baby on 14 Oct 2022
Edited: Hernia Baby on 14 Oct 2022
Datalinesオプションを設定するんですが、たぶん大変だと思います。
ですので、インポートツールを使用してGUIで操作した後に関数することをオススメします。
csvファイル等をコマンドウィンドウにドラッグ&ドロップで行えます。
例えばですが、インポートツールで作成したコードは以下のようになります。
data = importfile('data_1.csv')
data = 19×2 table
a c __ ________ 3 0.9322 4 0.89004 5 0.96217 6 0.44678 7 0.070904 8 0.82794 9 0.57859 10 0.050862 11 0.34319 12 0.34469 13 0.99012 14 0.50574 15 0.044251 16 0.62043 17 0.54145 18 0.69856
以下はインポートツールで作った関数です
function data1 = importfile(filename, dataLines)
% ここでdataLinesを3行から読むように指定してます
% dataLines が指定されていない場合、既定値を定義します
if nargin < 2
dataLines = [3, Inf];
end
%% インポート オプションの設定およびデータのインポート
opts = delimitedTextImportOptions("NumVariables", 2);
% ここでoptionとして指定しています
% 範囲と区切り記号の指定
opts.DataLines = dataLines;
opts.Delimiter = ",";
% 列名と型の指定
opts.VariableNames = ["a", "c"];
opts.VariableTypes = ["double", "double"];
% ファイル レベルのプロパティを指定
opts.ExtraColumnsRule = "ignore";
opts.EmptyLineRule = "read";
% データのインポート
data1 = readtable(filename, opts);
end

Community Treasure Hunt

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

Start Hunting!