MATLABにもPythonのformat関数に似たものはありますか?
7 ビュー (過去 30 日間)
古いコメントを表示
【やりたいこと】
MATLABでcsvファイルを読み込む際、'A_gait.csv', 'B_gait.csv', 'C_gait.csv', ...のように似たようなファイル名で管理しているため、A、B、Cのところだけを変更して簡単に処理できるようにしたいと思っています。以前Pythonを使用していたときは、format関数があったため、以下のように処理することができました。
name = {'A', 'B', 'C'};
data = readmatrix('A_gait.csv'); % この形式ではなく、
data = readmatrix('{}_gait.csv'.format(name));% このような形式で表したい
% Pythonのformat関数一例
a = 123
b = 'abc'
print('{} and {}'.format(a, b))
%ans = 123 and abc
MATLABでも文字列を処理する際に似たような関数があればその使い方含めて教えてくださると幸いです。
0 件のコメント
採用された回答
Kenjiro Sugimoto
2024 年 4 月 3 日
編集済み: Kenjiro Sugimoto
2024 年 4 月 4 日
sprintf() はいかがでしょうか(Pythonの format() というよりはC言語の printf()/sprintf() に近いものですが)。文字列の中に数字等を埋め込めこんだ結果を返します。第1引数が書式を表す文字列で、第2引数以降が挿入したい値です。書式文字列中に整数用のプレースホルダ「%d」や文字列用のプレースホルダー「%s」を仕込んでおくと、そこに数値や文字列を入れてくれます。必要に応じて桁数指定などもできます。詳しくは参考リンクをご覧ください。
name = "A";
sprintf("%s_gait.csv", name)
a = 123;
b = "abc";
sprintf("%d and %s", a, b)
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で ビッグ データの処理 についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!