R 기초; 행렬 생성
# 차원 부여하기
v <- 1:12
dim(v) <- c(3, 4)
v <- 1:12
matrix(data=v, nrow=3, ncol=4)
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
matrix(data=v, nrow=3, ncol=4, byrow=TRUE)
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] 5 6 7 8
[3,] 9 10 11 12
# 행렬의 이름 생성하기
rnames = c("R1", "R2", "R3")
colnames = c("C1", "C2", "C3", "C4")
matrix(data=v, nrow=3, ncol=4, dimnames=list(rnames, colnames))
C1 C2 C3 C4
R1 1 4 7 10
R2 2 5 8 11
R3 3 6 9 12
matrix(0, 3, 4)
[,1] [,2] [,3] [,4]
[1,] 0 0 0 0
[2,] 0 0 0 0
[3,] 0 0 0 0
matrix(NA, 3, 4)
[,1] [,2] [,3] [,4]
[1,] NA NA NA NA
[2,] NA NA NA NA
[3,] NA NA NA NA
matrix(v, ncol=4)
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
mat <- matrix(v, ncol=4)
mat
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
str(mat)
int [1:3, 1:4] 1 2 3 4 5 6 7 8 9 10 ...
dim(mat)
[1] 3 4
# 행의 개수 출력하기
dim(mat)[1]
[1] 3
# 열의 개수 출력하기
dim(mat)[2]
nrow(mat)
[1] 3
ncol(mat)
[1] 4
length(mat)
[1] 12
# 벡터 결합하기
v1 <- c(1, 2, 3, 4, 5)
v2 <- c(5, 7, 8, 9, 10)
# 행을 기준으로 결합하기 using rbind()
rbind(v1, v2)
[,1] [,2] [,3] [,4] [,5]
v1 1 2 3 4 5
v2 5 7 8 9 10
# 열을 기준으로 결합하기 using cbind()
cbind(v1, v2)
v1 v2
[1,] 1 5
[2,] 2 7
[3,] 3 8
[4,] 4 9
[5,] 5 10
cbind(1:3, 4:6, matrix(7:12, 3, 2))
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
rbind(matrix(1:6, 2, 3), matrix(7:12, 2, 3))
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
[3,] 7 9 11
[4,] 8 10 12
'공부 > R Programming' 카테고리의 다른 글
R기초; 리스트 생성 (0) | 2021.01.04 |
---|---|
R 기초; 배열 (0) | 2021.01.04 |
R 기초; 팩터 (0) | 2021.01.03 |
R 기초; 벡터 인덱싱 (0) | 2021.01.03 |
R 기초; 행렬 연산 (0) | 2021.01.02 |
댓글