べき乗の変換について
조회 수: 40 (최근 30일)
이전 댓글 표시
変数A=[-0.2;-0.1;-7.1;8.2]と入っています。
変数Bは、<undefined>、<undefined>、E-02、E-03のように、べき乗のものとそうでないものがcategorical(文字)で入っています。
変数Cとして、C=[-0.2; -0.1; -7.1*10^{-2};8.2*10^{-3}];のようなものを取得したいと思っています。
つまり、<undefined>の場合は何もせず、E-02の時は*10^{-2}をかけるような処理をしたいと思っています。
if文でしょうか?このような場合、どのように書けばよろしいでしょうか。
教えていただけますと幸いです。ご教示のほど、どうぞよろしくお願いいたします。
댓글 수: 0
채택된 답변
Atsushi Ueno
2022년 5월 25일
A = [-0.2, -0.1, -7.1, 8.2]; % 変数A: 行ベクトル/列ベクトル共に要領は同じです
B = categorical({'', '', 'E-02', 'E-03'}) % 変数B: categorical(文字)
B(ismissing(B)) = 'E+00' % 変数Bの欠損値をE+00にする
B = double(1 + string(B)) % stringに変換→頭に1を付け"1E+00"の形に→数値に変換
A .* B % 変数Aの要素毎に変数Bを掛ける
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!