Matrixfunktion i R: Opret, udskriv, tilføj kolonne og udsnit

Matrixfunktion i R

En matrixfunktion i R er en 2-dimensionel matrix, der har m antal rækker og n antal kolonner. Med andre ord er matrix i R-programmering en kombination af to eller flere vektorer med samme datatype.

Bemærk: Det er muligt at oprette mere end to dimensions arrays med matrixfunktion i R.

Matrixfunktion i R

Sådan opretter du en matrix i R

Vi kan lave en matrix med funktionen matrix(). Følgende er en funktion til at skabe en matrix i R, som tager tre argumenter:

matrix(data, nrow, ncol, byrow = FALSE)

argumenter:

  • data: Samlingen af ​​elementer, som R vil arrangere i rækkerne og kolonnerne i matrixen \
  • indsnævre: Antal rækker
  • ncol: Antal kolonner
  • byrow: Rækkerne udfyldes fra venstre mod højre. Vi bruger `byrow = FALSE` (standardværdier), hvis vi ønsker at matrixen skal udfyldes af kolonnerne, dvs. værdierne er udfyldt fra top til bund.

Lad os konstruere to 5×2 matrixer med en talfølge fra 1 til 10, en med byrow = TRUE og en med byrow = FALSE for at se forskellen.

# Construct a matrix with 5 rows that contain the numbers 1 up to 10 and byrow =  TRUE 
matrix_a <-matrix(1:10, byrow = TRUE, nrow = 5)
matrix_a

Output:

Opret en matrix i R

Udskriv dimension af matricen med dim()

Lad os nu udskrive dimensionen af ​​matricen i R med dim(). Syntaksen til at udskrive matrix i R ved hjælp af dim() er:

# Print dimension of the matrix with dim()
dim(matrix_a)

Output:

## [1] 5 2

Konstruer en matrix med 5 rækker, der indeholder tallene 1 op til 10 og byrow = FALSK

# Construct a matrix with 5 rows that contain the numbers 1 up to 10 and byrow =  FALSE
matrix_b <-matrix(1:10, byrow = FALSE, nrow = 5)
matrix_b

Output:

Matrix med 5 rækker, der indeholder byrow = FALSK

Udskriv dimension af matricen med dim()

Igen, udskriv dimensionen af ​​matrixen ved hjælp af dim(). Nedenfor er en syntaks for R printmatrixdimension:

# Print dimension of the matrix with dim()
dim(matrix_b)

Output:

## [1] 5 2

Bemærk: Brug af kommando matrix_b <-matrix(1:10, byrow = FALSE, ncol = 2) vil have samme effekt som ovenfor.

Du kan også oprette en 4×3 matrix ved hjælp af ncol. R vil oprette 3 kolonner og udfylde rækken fra top til bund. Tjek et eksempel

matrix_c <-matrix(1:12, byrow = FALSE, ncol = 3)
matrix_c

Output:

##       [,1] [,2] [,3]
## [1,]    1    5    9
## [2,]    2    6   10
## [3,]    3    7   11
## [4,]    4    8   12

Eksempel:

dim(matrix_c)

Output:

## [1] 4 3

Tilføj en kolonne til en matrix med cbind()

Du kan tilføje kolonne til matrix R med kommandoen cbind(). cbind() betyder, at kolonnebinding.cbind() kan sammenkæde så mange matrix eller kolonner som angivet. For eksempel oprettede vores tidligere eksempel en 5×2 matrix. Vi sammenkæder en tredje kolonne og kontrollerer, at dimensionen er 5×3

Eksempel:

# concatenate c(1:5) to the matrix_a
matrix_a1 <- cbind(matrix_a, c(1:5))
# Check the dimension
dim(matrix_a1)

Output:

## [1] 5 3

Eksempel:

matrix_a1

Produktion

##       [,1] [,2] [,3]
## [1,]    1    2    1
## [2,]    3    4    2
## [3,]    5    6    3
## [4,]    7    8    4
## [5,]    9   10    5

Eksempel:

Vi kan også tilføje kolonne til matrix R, mere end én gang. Lad os se den næste talrække til matrix_a2-matricen. Dimensionen af ​​nye matricer i R vil være 4×6 med tal fra 1 til 24.

matrix_a2 <-matrix(13:24, byrow = FALSE, ncol = 3)

Output:

##      [,1] [,2] [,3]
## [1,]   13   17   21
## [2,]   14   18   22
## [3,]   15   19   23
## [4,]   16   20   24

Eksempel:

matrix_c <-matrix(1:12, byrow = FALSE, ncol = 3)		
matrix_d <- cbind(matrix_a2, matrix_c)
dim(matrix_d)

Output:

## [1] 4 6

BEMÆRK: Antallet af rækker af matricer i R skal være det samme for cbind arbejde

cbind()sammenkæde kolonner, rbind() tilføjer rækker. Lad os tilføje en række til vores matrix_c-matrix og kontrollere, at dimensionen er 5×3

matrix_c <-matrix(1:12, byrow = FALSE, ncol = 3)
# Create a vector of 3 columns
add_row <- c(1:3)
# Append to the matrix
matrix_c <- rbind(matrix_c, add_row)
# Check the dimension
dim(matrix_c)

Output:

## [1] 5 3

Skær en matrix i skiver

Vi kan vælge elementer et eller flere elementer fra en matrix i R programmering ved at bruge firkantede parenteser [ ]. Det er her udskæring kommer ind i billedet.

For eksempel:

  • matrix_c[1,2] vælger elementet i den første række og anden kolonne.
  • matrix_c[1:3,2:3] resulterer i en R-snitmatrix med dataene på rækkerne 1, 2, 3 og kolonne 2, 3,
  • matrix_c[,1] vælger alle elementer i den første kolonne.
  • matrix_c[1,] vælger alle elementer i den første række.

Her er det output, du får for ovenstående koder

Skær en matrix i skiver