べき乗の変換について

5 visualizaciones (últimos 30 días)
Hiroki Takeda
Hiroki Takeda el 25 de Mayo de 2022
Comentada: Hiroki Takeda el 27 de Mayo de 2022
変数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文でしょうか?このような場合、どのように書けばよろしいでしょうか。
教えていただけますと幸いです。ご教示のほど、どうぞよろしくお願いいたします。

Respuesta aceptada

Atsushi Ueno
Atsushi Ueno el 25 de Mayo de 2022
A = [-0.2, -0.1, -7.1, 8.2]; % 変数A: 行ベクトル/列ベクトル共に要領は同じです
B = categorical({'', '', 'E-02', 'E-03'}) % 変数B: categorical(文字)
B = 1×4 categorical array
<undefined> <undefined> E-02 E-03
B(ismissing(B)) = 'E+00' % 変数Bの欠損値をE+00にする
B = 1×4 categorical array
E+00 E+00 E-02 E-03
B = double(1 + string(B)) % stringに変換→頭に1を付け"1E+00"の形に→数値に変換
B = 1×4
1.0000 1.0000 0.0100 0.0010
A .* B % 変数Aの要素毎に変数Bを掛ける
ans = 1×4
-0.2000 -0.1000 -0.0710 0.0082
  1 comentario
Hiroki Takeda
Hiroki Takeda el 27 de Mayo de 2022
ご連絡いただきありがとうございます。
無事にうまくいきました。ありがとうございます。
またよろしくお願いいたします。

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Logical en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!