文字列と数字が混ざっ​たcsvファイルから​特定のデータを抜き出​す方法

51 ビュー (過去 30 日間)
A.T
A.T 2023 年 3 月 2 日
コメント済み: A.T 2023 年 3 月 7 日
初心者のため初歩的な質問かもしれませんが、行き詰ってしまったのでご教示いただきたいです。
ドロップダウンボックスで選択した項目(A~G)について、ボタンを押したら特定のフォルダにあるcsvファイルから対応したidのみ抜き出し保存かつ新規csvファイルに保存する方法を教えていただきたいです。
自分でコードを作ってみたのですが、文字が入っているとうまくcsvファイルが読み込めなかったり、指定のidを取り出すこともうまくできず困っております。

採用された回答

Atsushi Ueno
Atsushi Ueno 2023 年 3 月 2 日
編集済み: Atsushi Ueno 2023 年 3 月 2 日
>文字が入っているとうまくcsvファイルが読み込めなかったり、指定のidを取り出すこともうまくできず
readmatrix 関数や readtable 関数なら、出力データ型をテキストにする事でうまく読み込めます。
最初に一度だけ読み込んでおけば良い様なのでstartupFcn()で実行するのが良いかと思います。
classdef app1 < matlab.apps.AppBase
properties (Access = private)
csv_file_path % 特定のフォルダにあるcsvファイルのパス
csv_table % csv⇒table
id % 取り出したid
end
methods (Access = private)
function startupFcn(app) % 最初に一度だけ実行するスタートアップ関数
app.csv_file_path = 'https://jp.mathworks.com/matlabcentral/answers/uploaded_files/1311960/sample.csv';
app.csv_table = readtable(app.csv_file_path,'TextType','string'); % readtable 関数で Table を出力
end
function ButtonPushed(app, event) % ボタンを押したときのコールバック関数
% ドロップダウンボックスの選択項目(A~G)から指定のidを取り出す
app.id = app.csv_table{app.csv_table.name==app.DropDown.Value,2};
writematrix(app.id); % かつ新規csvファイルに保存する
end
end
end
  5 件のコメント
A.T
A.T 2023 年 3 月 7 日
お返事が遅くなり申し訳ありません。
ご丁寧に回答いただきありがとうございました!無事プログラムが動作しました。

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchange環境と設定 についてさらに検索

Community Treasure Hunt

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

Start Hunting!