R-matrix is een tweedimensionale rangschikking van gegevens in rijen en kolommen.
In een matrix lopen de rijen horizontaal en de kolommen verticaal. In R-programmering , matrices zijn tweedimensionale, homogene datastructuren. Dit zijn enkele voorbeelden van matrices:

R – Matrices
Een matrix maken in R
Om een matrix in R te maken, moet je de functie genaamd gebruiken Matrix() .
De argumenten hiervoor Matrix() zijn de verzameling elementen in de vector. U moet doorgeven hoeveel rijen en hoeveel kolommen u in uw matrix wilt hebben.
Opmerking: Standaard staan matrices in kolomvolgorde.
Syntaxis om R-Matrix te maken
matrix(data, nrow, ncol, byrow, dimnamen)
Parameters:
- gegevens - waarden die u wilt invoeren
- nrow – Nee. van rijen
- ncol – Nee. van kolommen
- bijrij – logische aanwijzing of de ‘echte’ waarde door rijen wordt toegewezen
- dimnamen – namen van rijen en kolommen
Voorbeeld:
Java-gegevenstypen
R
# R program to create a matrix> > A =>matrix>(> > ># Taking sequence of elements> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> > ># No of rows> >nrow = 3,> > ># No of columns> >ncol = 3,> > ># By default matrices are in column-wise order> ># So this parameter decides how to arrange the matrix> >byrow =>TRUE> )> > # Naming rows> rownames>(A) =>c>(>'a'>,>'b'>,>'c'>)> > # Naming columns> colnames>(A) =>c>(>'c'>,>'d'>,>'e'>)> > cat>(>'The 3x3 matrix:
'>)> print>(A)> |
>
>Uitvoer
The 3x3 matrix: c d e a 1 2 3 b 4 5 6 c 7 8 9>
Speciale matrices maken in R
Met R kunt u verschillende soorten matrices maken met behulp van argumenten die worden doorgegeven aan de functie matrix().
1. Matrix waarbij alle rijen en kolommen worden gevuld door één constante ‘k’:
Om zo’n R-matrix te maken, wordt de syntaxis hieronder gegeven:
Syntaxis: matrix(k, m, n)
Parameters:
k: de constante
M: aantal rijen
N: aantal kolommen
Voorbeeld:
R
# R program to illustrate> # special matrices> # Matrix having 3 rows and 3 columns> # filled by a single constant 5> print>(>matrix>(5, 3, 3))> |
>
>Uitvoer
[,1] [,2] [,3] [1,] 5 5 5 [2,] 5 5 5 [3,] 5 5 5>
2. Diagonale matrix:
Een diagonaalmatrix is een matrix waarin de gegevens buiten de hoofddiagonaal allemaal nul zijn. Om zo’n R-matrix te maken, wordt de syntaxis hieronder gegeven:
Syntaxis: diag(k, m, n)
Parameters:
k: de constanten/array
M: aantal rijen
N: aantal kolommen
Voorbeeld:
R
# R program to illustrate> # special matrices> # Diagonal matrix having 3 rows and 3 columns> # filled by array of elements (5, 3, 3)> print>(>diag>(>c>(5, 3, 3), 3, 3))> |
>
>Uitvoer
[,1] [,2] [,3] [1,] 5 0 0 [2,] 0 3 0 [3,] 0 0 3>
3. Identiteitsmatrix:
Een identiteitsmatrix waarin alle elementen van de hoofddiagonaal enen zijn en alle andere elementen nullen. Om zo’n R-matrix te maken, wordt de syntaxis hieronder gegeven:
Syntaxis: diag(k, m, n)
Parameters:
k: 1
M: aantal rijen
N: aantal kolommen
Voorbeeld:
R
# R program to illustrate> # special matrices> # Identity matrix having> # 3 rows and 3 columns> print>(>diag>(1, 3, 3))> |
>
>Uitvoer
[,1] [,2] [,3] [1,] 1 0 0 [2,] 0 1 0 [3,] 0 0 1>
4. Matrixstatistieken
Matrixstatistieken vertellen u over de matrix die u heeft gemaakt. Misschien wilt u het aantal rijen, het aantal kolommen en de afmetingen van een matrix weten.
Het onderstaande voorbeeld helpt u bij het beantwoorden van de volgende vragen:
- Hoe kun je de dimensie van de matrix kennen?
- Hoe kun je weten hoeveel rijen er in de matrix zijn?
- Hoeveel kolommen bevat de matrix?
- Hoeveel elementen zitten er in de matrix?
Voorbeeld:
R
# R program to illustrate> # matrix metrics> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'The 3x3 matrix:
'>)> print>(A)> cat>(>'Dimension of the matrix:
'>)> print>(>dim>(A))> cat>(>'Number of rows:
'>)> print>(>nrow>(A))> cat>(>'Number of columns:
'>)> print>(>ncol>(A))> cat>(>'Number of elements:
'>)> print>(>length>(A))> # OR> print>(>prod>(>dim>(A)))> |
inorder traversal van binaire boom
>
>Uitvoer
The 3x3 matrix: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 Dimension of the matrix: [1] 3 3 Number of rows: [1] 3 Number of columns: [1] 3 Number of elements: [1] ...>
Toegang tot elementen van een R-matrix
We hebben toegang tot elementen in de R-matrices met behulp van dezelfde conventie die wordt gevolgd in dataframes. Je hebt dus een matrix gevolgd door een vierkante haak met een komma ertussen.
Waarde vóór de komma wordt gebruikt om toegang te krijgen tot rijen en waarde na de komma wordt gebruikt om toegang te krijgen tot kolommen. Laten we dit illustreren door een eenvoudige R-code te nemen.
Toegang tot rijen:
R
# R program to illustrate> # access rows in metrics> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'The 3x3 matrix:
'>)> print>(A)> # Accessing first and second row> cat>(>'Accessing first and second row
'>)> print>(A[1:2, ])> |
>
>Uitvoer
The 3x3 matrix: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 Accessing first and second row [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6>
Toegang tot kolommen:
R
# R program to illustrate> # access columns in metrics> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'The 3x3 matrix:
'>)> print>(A)> # Accessing first and second column> cat>(>'Accessing first and second column
'>)> print>(A[, 1:2])> |
>
>Uitvoer
The 3x3 matrix: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 Accessing first and second column [,1] [,2] [1,] 1 2 [2,] 4 5 [3,] 7 8>
Meer voorbeelden van toegang tot elementen van een R-matrix:
R
# R program to illustrate> # access an entry in metrics> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'The 3x3 matrix:
'>)> print>(A)> # Accessing 2> print>(A[1, 2])> # Accessing 6> print>(A[2, 3])> |
>
>Uitvoer
The 3x3 matrix: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 [1] 2 [1] 6>
Toegang tot submatrices in R:
We hebben toegang tot de submatrix in een matrix met behulp van de dubbele punt(:) exploitant.
R
to string-methode in Java
# R program to illustrate> # access submatrices in a matrix> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'The 3x3 matrix:
'>)> print>(A)> cat>(>'Accessing the first three rows and the first two columns
'>)> print>(A[1:3, 1:2])> |
>
>Uitvoer
The 3x3 matrix: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 Accessing the first three rows and the first two columns [,1] [,2] [1,] 1 2 [2,] 4 5 [3...>
Elementen van een R-matrix wijzigen
In R kun je de elementen van de matrices wijzigen door een directe toewijzing.
Voorbeeld:
R
# R program to illustrate> # editing elements in metrics> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'The 3x3 matrix:
'>)> print>(A)> # Editing the 3rd rows and 3rd column element> # from 9 to 30> # by direct assignments> A[3, 3] = 30> cat>(>'After edited the matrix
'>)> print>(A)> |
>
>Uitvoer
The 3x3 matrix: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 After edited the matrix [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 30>
R-Matrix-concatenatie
Matrixaaneenschakeling verwijst naar het samenvoegen van rijen of kolommen van een bestaande R-matrix.
Aaneenschakeling van een rij:
De aaneenschakeling van een rij naar een matrix gebeurt met behulp van rbind() .
R
# R program to illustrate> # concatenation of a row in metrics> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'The 3x3 matrix:
'>)> print>(A)> # Creating another 1x3 matrix> B =>matrix>(> >c>(10, 11, 12),> >nrow = 1,> >ncol = 3> )> cat>(>'The 1x3 matrix:
'>)> print>(B)> # Add a new row using rbind()> C =>rbind>(A, B)> cat>(>'After concatenation of a row:
'>)> print>(C)> |
>
>Uitvoer
The 3x3 matrix: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 The 1x3 matrix: [,1] [,2] [,3] [1,] 10 11 12 After concatenation of a row: [,1] [,2] [,3...>
Aaneenschakeling van een kolom:
De aaneenschakeling van een kolom naar een matrix gebeurt met behulp van cbind() .
R
# R program to illustrate> # concatenation of a column in metrics> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'The 3x3 matrix:
'>)> print>(A)> # Creating another 3x1 matrix> B =>matrix>(> >c>(10, 11, 12),> >nrow = 3,> >ncol = 1,> >byrow =>TRUE> )> cat>(>'The 3x1 matrix:
'>)> print>(B)> # Add a new column using cbind()> C =>cbind>(A, B)> cat>(>'After concatenation of a column:
'>)> print>(C)> |
>
>Uitvoer
The 3x3 matrix: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 The 3x1 matrix: [,1] [1,] 10 [2,] 11 [3,] 12 After concatenation of a column: [,1] [,2] ...>
Dimensie-inconsistentie: Houd er rekening mee dat u ervoor moet zorgen dat de dimensies tussen de matrix consistent zijn voordat u deze matrixaaneenschakeling uitvoert.
R
ml tot oz
# R program to illustrate> # Dimension inconsistency in metrics concatenation> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'The 3x3 matrix:
'>)> print>(A)> # Creating another 1x3 matrix> B =>matrix>(> >c>(10, 11, 12),> >nrow = 1,> >ncol = 3,> )> cat>(>'The 1x3 matrix:
'>)> print>(B)> # This will give an error> # because of dimension inconsistency> C =>cbind>(A, B)> cat>(>'After concatenation of a column:
'>)> print>(C)> |
>
>
Uitgang:
The 3x3 matrix: [, 1] [, 2] [, 3] [1, ] 1 2 3 [2, ] 4 5 6 [3, ] 7 8 9 The 1x3 matrix: [, 1] [, 2] [, 3] [1, ] 10 11 12 Error in cbind(A, B) : number of rows of matrices must match (see arg 2)>
Rijen en kolommen toevoegen in een R-matrix
Om een rij toe te voegen in de R-matrix kunt u gebruik maken van rbind() functie en om een kolom toe te voegen aan de R-matrix die u kunt gebruiken cbind () functie.
Rij toevoegen
Laten we het onderstaande voorbeeld bekijken over hoe u een rij in de R-matrix kunt toevoegen?
Voorbeeld:
R
# Create a 3x3 matrix> number <->matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'Before inserting a new row:
'>)> print>(number)> # New row to be inserted> new_row <->c>(10, 11, 12)># Define the new row> # Inserting the new row at the second position> A <->rbind>(number[1, ], new_row, number[-1, ])> cat>(>'
After inserting a new row:
'>)> print>(number)> |
>
>Uitvoer
Before inserting a new row: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 After inserting a new row: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,]...>
Kolom toevoegen
Laten we het onderstaande voorbeeld bekijken over hoe u een kolom in de R-matrix kunt toevoegen?
R
# Create a 3x3 matrix> number <->matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'Before adding a new column:
'>)> print>(number)> # New column to be added> new_column <->c>(10, 11, 12)># Define the new column> # Adding the new column at the end> number <->cbind>(number, new_column)> cat>(>'
After adding a new column:
'>)> print>(number)> |
>
>Uitvoer
Before adding a new column: [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 After adding a new column: new_column [1,] 1 2 3 10 [2,] 4 5 6 1...>
Rijen en kolommen van een R-matrix verwijderen
Als u een rij of kolom wilt verwijderen, moet u eerst die rij of kolom openen en vervolgens een minteken vóór die rij of kolom plaatsen. Het geeft aan dat u die rij of kolom moest verwijderen.
Rij verwijderen:
R
ubuntu build-essentials
# R program to illustrate> # row deletion in metrics> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'Before deleting the 2nd row
'>)> print>(A)> # 2nd-row deletion> A = A[-2, ]> cat>(>'After deleted the 2nd row
'>)> print>(A)> |
>
>Uitvoer
Before deleting the 2nd row [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 After deleted the 2nd row [,1] [,2] [,3] [1,] 1 2 3 [2,] 7 8 9>
Kolom verwijderen:
R
# R program to illustrate> # column deletion in metrics> # Create a 3x3 matrix> A =>matrix>(> >c>(1, 2, 3, 4, 5, 6, 7, 8, 9),> >nrow = 3,> >ncol = 3,> >byrow =>TRUE> )> cat>(>'Before deleting the 2nd column
'>)> print>(A)> # 2nd-row deletion> A = A[, -2]> cat>(>'After deleted the 2nd column
'>)> print>(A)> |
>
>Uitvoer
Before deleting the 2nd column [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 After deleted the 2nd column [,1] [,2] [1,] 1 3 [2,] 4 6 [3,] 7 9>
We hebben gesproken over R-matrices en hun basisbewerkingen, zoals het toevoegen van nieuwe rijen en kolommen, het verwijderen van rijen en kolommen, het samenvoegen van matrices, enz.
Ik hoop dat dit je heeft geholpen bij het begrijpen van matrices in R, en dat je R-matrices nu comfortabel in je projecten kunt gebruiken.
Controleer ook:
- R – Array
- R – Lijsten
- R – Tupels