Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

power, .^

説明

C = A.^B は、A の各要素に対して、B の対応するべき乗を計算します。AB は、同じサイズであるか、互換性のあるサイズでなければなりません。

AB のサイズに互換性がある場合、2 つの配列は互いに一致するように暗黙的に拡張されます。たとえば、A または B の一方がスカラーである場合、そのスカラーはもう一方の配列の各要素と組み合わされます。また、方向の異なるベクトル (一方が行ベクトルで、もう一方が列ベクトル) は、行列となるよう暗黙的に拡張されます。

C = power(A,B)A.^B の代替方法として実行できますが、まれにしか使われません。これにより、クラスの演算子のオーバーロードが可能です。

すべて折りたたむ

ベクトル A を作成し、各要素を二乗します。

A = 1:5;
C = A.^2
C = 1×5

     1     4     9    16    25

行列 A を作成し、各要素の逆数を取ります。

A = [1 2 3; 4 5 6; 7 8 9];
C = A.^-1
C = 3×3

    1.0000    0.5000    0.3333
    0.2500    0.2000    0.1667
    0.1429    0.1250    0.1111

要素ごとの逆数は行列の逆行列と等価ではありません。逆行列は、A^-1 または inv(A) と記述されます。

1 行 2 列の行ベクトルと 3 行 1 列の列ベクトルを作成し、行ベクトルを列ベクトルでべき乗します。

a = [2 3];
b = (1:3)';
a.^b
ans = 3×2

     2     3
     4     9
     8    27

結果は、3 行 2 列の行列になります。ここで、行列の各 (i,j) 要素は (j) .^ b(i) と等しくなります。

a=[a1a2],b=[b1b2b3],          a.ˆb=[a1b1a2b1a1b2a2b2a1b3a2b3].

-11/3 べき乗を計算します。

A = -1;
B = 1/3;
C = A.^B
C = 0.5000 + 0.8660i

負の基数 A および整数でない B の場合、関数 power は複素数を返します。

実数の根を求めるには、関数 nthroot を使用します。

C = nthroot(A,3)
C = -1

R2023a 以降

2 つの table を作成し、最初の table を 2 番目の table で累乗します。行名 (両方に存在している場合) および変数名は同じでなければなりませんが、同じ順序である必要はありません。出力の行および変数は、最初の入力と同じ順序になります。

A = table([1;2],[3;4],VariableNames=["V1","V2"],RowNames=["R1","R2"])
A=2×2 table
          V1    V2
          __    __

    R1    1     3 
    R2    2     4 

B = table([4;2],[3;1],VariableNames=["V2","V1"],RowNames=["R2","R1"])
B=2×2 table
          V2    V1
          __    __

    R2    4     3 
    R1    2     1 

C = A .^ B
C=2×2 table
          V1    V2 
          __    ___

    R1    1       9
    R2    8     256

入力引数

すべて折りたたむ

オペランド。スカラー、ベクトル、行列、多次元配列、table、または timetable として指定します。AB は、同じサイズであるか、互換性のあるサイズでなければなりません (たとえば、AMN 列の行列で、B がスカラーまたは 1N 列の行ベクトル)。詳細については、基本的な演算で互換性のある配列サイズを参照してください。

  • 整数データ型のオペランドは、複素数にできません。

table または timetable である入力は次の条件を満たさなければなりません。 (R2023a 以降)

  • 入力が table または timetable の場合、すべての変数のデータ型で演算がサポートされている必要があります。

  • 一方の入力だけが table または timetable の場合、もう一方の入力は数値または logical 配列でなければなりません。

  • 両方の入力が table または timetable の場合、以下のとおりです。

    • 両方の入力のサイズが同じであるか、一方が 1 行の table でなければなりません。

    • 両方の入力に同じ名前をもつ変数が含まれている必要があります。ただし、各入力の変数の順序は異なっていてもかまいません。

    • 両方の入力が table で、両方とも行名をもつ場合、行名は同じでなければなりません。ただし、各入力の行名の順序は異なっていてもかまいません。

    • 両方の入力が timetable の場合、行時間が同じでなければなりません。ただし、各入力の行時間の順序は異なっていてもかまいません。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | table | timetable
複素数のサポート: あり

詳細

すべて折りたたむ

IEEE 準拠

実数入力の場合、power の動作の一部が IEEE®-754 Standard で推奨されている動作とは異なります。

  MATLAB® IEEE

power(1,NaN)

NaN

1

power(NaN,0)

NaN

1

拡張機能

バージョン履歴

R2006a より前に導入

すべて展開する