Rで要素による乗算を実行する方法


R は、2 つのオブジェクト間で要素ごとの乗算を実行するのに優れています。

次の例は、R のさまざまなオブジェクト間で要素ごとの乗算を実行する方法を示しています。

例 1: 2 つのベクトルの乗算

次のコードは、2 つのベクトルを要素ごとに乗算する方法を示しています。

 #createvectors
a <- c(1, 3, 4, 5)
b <- c(2, 2, 3, 3)

#perform element-wise multiplication
a*b

[1] 2 6 12 15

結果の計算方法は次のとおりです。

  • 1*2= 2
  • 3*2 = 6
  • 4*3 = 12
  • 5*3 = 15

例 2: データ フレームとベクトルを乗算する

次のコードは、データフレームとベクトルを要素ごとに乗算する方法を示しています。

 #define data frame
df <- data. frame (a=c(1, 3, 4, 5),
                 b=c(2, 2, 3, 3))

#view data frame
df

  ab
1 1 2
2 3 2
3 4 3
4 5 3

#definevector
x <- c(2, 5, 5, 8)

#multiply data frame by vector
df*x

   ab
1 2 4
2 15 10
3 20 15
4 40 24

例 3: 2 つのデータ フレームを乗算する

次のコードは、2 つのデータ フレーム間で要素ごとの乗算を実行する方法を示しています。

 #define data frames
df1 <- data. frame (a=c(1, 3, 4, 5),
                  b=c(2, 2, 3, 3))
df2 <- data. frame (c=c(6, 2, 2, 2),
                  d=c(1, 7, 4, 9))

#multiply two data frames
df1*df2

   ab
1 6 2
2 6 14
3 8 12
4 10 27

結果のデータ ブロックは、乗算した 2 つのデータ ブロックと同じサイズになることに注意してください。

サイズの異なる 2 つのデータ フレームを乗算しようとすると、エラーが発生することにも注意してください。

 #define data frames of unequal sizes
df1 <- data. frame (a=c(1, 3, 4, 5),
                  b=c(2, 2, 3, 3))

df2 <- data. frame (c=c(6, 2, 2),
                  d=c(1, 7, 4))

#attempt to multiply two data frames
df1*df2

Error in Ops.data.frame(df1, df2): 
  '*' only defined for equally-sized data frames

追加リソース

Rで行列乗算を実行する方法
Rで行列をベクトルに変換する方法
R でデータ フレームの列をベクトルに変換する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です