So verwenden sie die scan-funktion in r (mit beispielen)
Sie können die Funktion swep() in R verwenden, um bestimmte Operationen an den Zeilen oder Spalten einer Matrix auszuführen.
Diese Funktion verwendet die folgende grundlegende Syntax:
sweep(x, MARGIN, STATS, FUN)
Gold:
- x : Matrixname
- MARGIN : Der Rand, an dem die Funktion ausgeführt werden soll (1=Zeilen, 2=Spalten)
- STATS : Die in der Funktion zu verwendenden Werte
- FUN : Die auszuführende Funktion
Die folgenden Beispiele zeigen, wie die swep()- Funktion in verschiedenen Szenarien in R verwendet wird.
Beispiel 1: Verwenden Sie swep(), um eine Operation für Zeilen auszuführen
Der folgende Code zeigt, wie Sie mit der Funktion swep() eine bestimmte Zahl zu den Werten in jeder Zeile der Matrix hinzufügen:
#define matrix
mat <- matrix(1:15, nrow= 5 )
#view matrix
mast
[,1] [,2] [,3]
[1,] 1 6 11
[2,] 2 7 12
[3,] 3 8 13
[4,] 4 9 14
[5,] 5 10 15
#add specific numbers to each row
sweep(mat, 1 , c(5, 10, 15, 20, 25), " + ")
[,1] [,2] [,3]
[1,] 6 11 16
[2,] 12 17 22
[3,] 18 23 28
[4,] 24 29 34
[5,] 30 35 40
So funktionierte die swep() -Funktion in diesem Szenario:
- Zu jedem Wert in der ersten Zeile wurde 5 addiert.
- Zu jedem Wert in der zweiten Zeile wurde 10 addiert.
- Zu jedem Wert in der dritten Zeile wurde 15 addiert.
- Zu jedem Wert in der vierten Zeile wurde 20 addiert.
- Zu jedem Wert in der fünften Zeile wurde 25 addiert.
Beachten Sie, dass wir in diesem Beispiel die Addition (+) als mathematische Operation verwendet haben, wir könnten uns aber auch für eine andere Operation entscheiden.
Der folgende Code zeigt beispielsweise, wie die Werte in jeder Zeile mit bestimmten Zahlen multipliziert werden:
#define matrix
mat <- matrix(1:15, nrow= 5 )
#view matrix
mast
[,1] [,2] [,3]
[1,] 1 6 11
[2,] 2 7 12
[3,] 3 8 13
[4,] 4 9 14
[5,] 5 10 15
#multiply values in each row by certain amount
sweep(mat, 1 , c(.5, 1, 2, 4, 6), " * ")
[,1] [,2] [,3]
[1,] 0.5 3 5.5
[2,] 2.0 7 12.0
[3,] 6.0 16 26.0
[4,] 16.0 36 56.0
[5,] 30.0 60 90.0
Beispiel 2: Verwenden Sie „scanning()“, um eine Operation für Spalten auszuführen
Der folgende Code zeigt, wie Sie mit der Funktion swep() eine bestimmte Zahl zu den Werten in jeder Spalte der Matrix hinzufügen:
#define matrix
mat <- matrix(1:15, nrow= 5 )
#view matrix
mast
[,1] [,2] [,3]
[1,] 1 6 11
[2,] 2 7 12
[3,] 3 8 13
[4,] 4 9 14
[5,] 5 10 15
#add specific numbers to each column
sweep(mat, 2 , c(5, 10, 15), " + ")
[,1] [,2] [,3]
[1,] 6 16 26
[2,] 7 17 27
[3,] 8 18 28
[4,] 9 19 29
[5,] 10 20 30
So funktionierte die swep() -Funktion in diesem Szenario:
- Zu jedem Wert in der ersten Spalte wurde 5 addiert.
- Zu jedem Wert in der zweiten Spalte wurde 10 addiert.
- Zu jedem Wert in der dritten Spalte wurde 15 addiert.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in R ausgeführt werden:
So erstellen Sie eine leere Matrix in R
So konvertieren Sie einen Datenrahmen in eine Matrix in R
So zeichnen Sie Zeilen einer Matrix in R auf