R의 행렬 함수: 생성, 인쇄, 열 및 슬라이스 추가
R의 행렬 함수
R의 행렬 함수는 m개의 행과 n개의 열을 갖는 2차원 배열입니다. 즉, R 프로그래밍의 행렬은 동일한 데이터 유형을 가진 두 개 이상의 벡터의 조합입니다.
참고 : R의 행렬 함수를 사용하면 XNUMX차원 이상의 배열을 만들 수 있습니다.
R에서 행렬을 만드는 방법
우리는 함수 matrix()로 행렬을 생성할 수 있습니다. 다음은 R에서 행렬을 생성하는 함수로, 세 개의 인수를 취합니다.
matrix(data, nrow, ncol, byrow = FALSE)
인수 :
- 데이터: R이 행렬의 행과 열로 배열할 요소의 모음 \
- 지금: 행 수
- 엔콜: 열 수
- byrow: 행은 왼쪽에서 오른쪽으로 채워집니다. 행렬을 열로 채우려면 `byrow = FALSE`(기본값)를 사용합니다. 즉, 값은 위에서 아래로 채워집니다.
5부터 2까지의 숫자 시퀀스로 두 개의 1×10 행렬을 구성해 보겠습니다. 하나는 byrow = TRUE이고 다른 하나는 byrow = FALSE입니다.
# 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
출력:
Dim()을 사용하여 행렬의 차원을 인쇄합니다.
이제 Dim()을 사용하여 R에서 행렬의 차원을 인쇄해 보겠습니다. Dim()을 사용하여 R에서 행렬을 인쇄하는 구문은 다음과 같습니다.
# Print dimension of the matrix with dim() dim(matrix_a)
출력:
## [1] 5 2
5부터 1까지의 숫자가 포함된 10개 행으로 구성된 행렬을 구성하고 byrow = FALSE를 지정합니다.
# 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
출력:
Dim()을 사용하여 행렬의 차원을 인쇄합니다.
다시 한번, Dim()을 사용하여 행렬의 차원을 인쇄합니다. 다음은 R 인쇄 행렬 차원의 구문입니다.
# Print dimension of the matrix with dim() dim(matrix_b)
출력:
## [1] 5 2
주의 사항: matrix_b <-matrix(1:10, byrow = FALSE, ncol = 2) 명령을 사용하면 위와 동일한 효과가 나타납니다.
ncol을 사용하여 4×3 행렬을 만들 수도 있습니다. R은 3개의 열을 생성하고 위에서 아래로 행을 채웁니다. 예시를 확인해보세요
matrix_c <-matrix(1:12, byrow = FALSE, ncol = 3) matrix_c
출력:
## [,1] [,2] [,3] ## [1,] 1 5 9 ## [2,] 2 6 10 ## [3,] 3 7 11 ## [4,] 4 8 12
예:
dim(matrix_c)
출력:
## [1] 4 3
cbind()를 사용하여 행렬에 열 추가
cbind() 명령을 사용하여 행렬 R에 열을 추가할 수 있습니다. cbind()는 열 바인딩을 의미합니다.cbind()는 지정된 만큼 많은 행렬 또는 열을 연결할 수 있습니다. 예를 들어, 이전 예제에서는 5×2 행렬을 만들었습니다. 세 번째 열을 연결하고 차원이 5×3인지 확인합니다.
예:
# concatenate c(1:5) to the matrix_a matrix_a1 <- cbind(matrix_a, c(1:5)) # Check the dimension dim(matrix_a1)
출력:
## [1] 5 3
예:
matrix_a1
산출
## [,1] [,2] [,3] ## [1,] 1 2 1 ## [2,] 3 4 2 ## [3,] 5 6 3 ## [4,] 7 8 4 ## [5,] 9 10 5
예:
행렬 R에 열을 두 번 이상 추가할 수도 있습니다. Matrix_a2 행렬의 다음 숫자 시퀀스를 살펴보겠습니다. R의 새로운 행렬의 차원은 4부터 6까지의 숫자를 포함하는 1×24입니다.
matrix_a2 <-matrix(13:24, byrow = FALSE, ncol = 3)
출력:
## [,1] [,2] [,3] ## [1,] 13 17 21 ## [2,] 14 18 22 ## [3,] 15 19 23 ## [4,] 16 20 24
예:
matrix_c <-matrix(1:12, byrow = FALSE, ncol = 3) matrix_d <- cbind(matrix_a2, matrix_c) dim(matrix_d)
출력:
## [1] 4 6
주의사항: R의 행렬 행 수는 cbind 작업에서 동일해야 합니다.
cbind()는 열을 연결하고, rbind()는 행을 추가합니다. Matrix_c 행렬에 행 하나를 추가하고 차원이 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)
출력:
## [1] 5 3
행렬 슬라이스
행렬에서 하나 이상의 요소를 선택할 수 있습니다. R 프로그래밍 대괄호 [ ]를 사용합니다. 여기서 슬라이싱이 등장합니다.
예 :
- Matrix_c[1,2]는 첫 번째 행과 두 번째 열의 요소를 선택합니다.
- Matrix_c[1:3,2:3] 결과는 행 1, 2, 3과 열 2, 3에 데이터가 있는 R 슬라이스 행렬이 됩니다.
- Matrix_c[,1]은 첫 번째 열의 모든 요소를 선택합니다.
- Matrix_c[1,]은 첫 번째 행의 모든 요소를 선택합니다.
위 코드에 대해 얻은 결과는 다음과 같습니다.