Elementweise Multiplikation in R - so geht's

Von Fabian
Kategorie: R
Lesezeit: 2 Minuten

R ist ausgezeichnet bei der Durchführung einer elementweisen Multiplikation zwischen zwei Objekten.

Die folgenden Beispiele zeigen, wie man eine elementweise Multiplikation zwischen verschiedenen Objekten in R durchführt.

Beispiel 1: Multiplizieren von zwei Vektoren

Der folgende Code zeigt, wie eine elementweise Multiplikation mit zwei Vektoren durchgeführt wird:

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

#elementweise Multiplikation durchführen
a*b

[1]  2  6 12 15

So wurden die Ergebnisse berechnet:

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

Beispiel 2: Dataframe und Vektor multiplizieren

Der folgende Code zeigt, wie eine elementweise Multiplikation mit einem Dataframe und einem Vektor durchgeführt wird:

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

#Dataframe anzeigen
df

  a b
1 1 2
2 3 2
3 4 3
4 5 3

#Vektor definieren
x <- c(2, 5, 5, 8)

#Dataframe mit Vektor multiplizieren
df*x

   a  b
1  2  4
2 15 10
3 20 15
4 40 24

Beispiel 3: Zwei Dataframes multiplizieren

Der folgende Code zeigt, wie eine elementweise Multiplikation zwischen zwei Dataframes durchgeführt wird:

#Dataframe definieren
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))

#zwei Dataframes multiplizieren
df1*df2

   a  b
1  6  2
2  6 14
3  8 12
4 10 27

Beachten Sie, dass der resultierende Dataframe dieselbe Größe wie die beiden Dataframe hat, die wir multipliziert haben.

Beachten Sie auch, dass wir eine Fehlermeldung erhalten, wenn wir versuchen, zwei Dataframe unterschiedlicher Größe zu multiplizieren:

#Definieren von Dataframes ungleicher Größe
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))

#Versuch, zwei Dataframe zu multiplizieren
df1*df2

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

Zusätzliche Ressourcen

Wie man eine Matrixmultiplikation in R durchführt

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: