d <- data.frame(x = c(1, 2, 3, 4, 5), y = c(2, 4, 6, 8, 10))
d$x
## [1] 1 2 3 4 5
d[1, ]
## x y
## 1 1 2
d[1, 2]
## [1] 2
벡터로 인덱스를 지정하거나 제외할 행 또는 열을 -로 표시할 수 있다.
d[c(1, 3), 2]
## [1] 2 6
d[-c(1, 3), -2]
## [1] 2 4 5
또는 컬럼명을 지정할 수도 있다.
d[, c("x", "y")]
## x y
## 1 1 2
## 2 2 4
## 3 3 6
## 4 4 8
## 5 5 10
d[, "x"]
## [1] 1 2 3 4 5
d[, "x", drop = FALSE]
## x
## 1 1
## 2 2
## 3 3
## 4 4
## 5 5
str(d)
## 'data.frame': 5 obs. of 2 variables:
## $ x: num 1 2 3 4 5
## $ y: num 2 4 6 8 10
d <- data.frame(x = 1:10000)
head(d)
## x
## 1 1
## 2 2
## 3 3
## 4 4
## 5 5
## 6 6
x <- data.frame(1:3)
x
## X1.3
## 1 1
## 2 2
## 3 3
colnames(x) <- c("val") #names()는 colnames()와 같은 기능
rownames(x) <- c("a", "b", "c")
x
## val
## a 1
## b 2
## c 3
%in% 연산자를 이용해 특정 조건을 만족시키는 열만 선택하는 작업을 손쉽게 할 수 있다.
(d <- data.frame(a = 1:3, b = 4:6, c = 7:9))
## a b c
## 1 1 4 7
## 2 2 5 8
## 3 3 6 9
d[, names(d) %in% c("b", "c")]
## b c
## 1 4 7
## 2 5 8
## 3 6 9
d[, !names(d) %in% c("a")]
## b c
## 1 4 7
## 2 5 8
## 3 6 9