내용 |
데이터셋 결합
rbind(iris[1, ], iris[7, ]) # 행으로 결합
cbind(iris, newVar=1:50) # 열로 결합
dataA <- data.frame(name=c("a", "b", "c"), age=c(22, 25, 30))
dataB <- data.frame(name=c("a", "c"), weight=c(80, 75))
merge(dataA, dataB) # 공통값을 기준으로 결합
merge(dataA, dataB, all=T) # 전체 결합, 값이 없는 경우 NA 사용
데이터셋 분할
head(iris, 100) # 처음 100개의 데이터 추출
tail(iris, 100) # 마지막 100개의 데이터 추출
subset(iris, iris$Species == "setosa") # 조건을 만족하는 subset 추출
subset(iris, iris$Sepal.Length > 5 & iris$Sepal.Length < 6)
subset(irsi, select=Sepal.Length)
apply 함수들
apply(X, MARGIN, FUN, ...) : 행렬이나 배열의 차원 별로 지정한 함수를 적용, 연산 결과를 반환. 반복문을 사용하는 것보다, 프로그램을 최소화하고 수행 속도도 빨리 할 수 있음.
lapply(X, FUN, ...) : list apply. 리스트에 지정한 함수를 적용, 연산 결과를 반환. 'X'는 벡터 또는 리스트이고, '함수’는‘X'내 각 요소에 적용할 함수. 함수를 적용한 결과는 리스트로 반환.
sapply(X, FUN, ...,쟳implify=TRUE,쟖SE.NAMES=TRUE) : simplification apply. sapply()는 lapply()와 유사하지만 리스트대신 행렬, 벡터 등으로 결과를 반환하는 함수
tapply(X, FACTOR, FUN) : 그룹별 처리를 위한 apply 함수. 데이터가 주어졌을 때 각 데이터가 속한 그룹별로 주어진 함수를 수행
데이터 조작 함수들
split() : 데이터를 분리하는데 사용된다. 형식은 ‘split(데이터, 분리조건)'
subset() : split()과 유사하지만 전체를 부분으로 구분하는 대신 특정 부분만 취하는 용도로 사용
merge() : 두 데이터 프레임을 공통된 값을 기준으로 묶는 함수. 데이터베이스에서 join과 같은 역할
sort() : sort()는 벡터를 정렬하는 목적으로 사용한다. sort()는 값을 정렬한 그 결과를 반환할 뿐 인자로 받은 벡터 자체를 변경하지 않는다.
order() : order()는 주어진 인자를 정렬하기 위한 각 요소의 색인을 반환한다. 큰 수부터 정렬한 결과를 얻고 싶다면 값에 -1 을 곱한다.
with(), within() : with()는 데이터 프레임 또는 리스트내 필드를 손쉽게 접근하기 위한 함수. within()은 with()와 비슷하지만 데이터를 수정하는데 사용
attach(), detach() : attach는 인자로 주어진 데이터 프레임이나 리스트를 곧바로 접근할 수 있게 해준다. 이를 해제하려면 detach()를 사용한다. attach()한 변수 값은 detach()시 원래의 데이터 프레임에는 반영되지 않는다.
which(), which.max(), which.min() : which()는 벡터 또는 배열에서 주어진 조건을 만족하는 값이 있는 곳의 색인을 찾는다. which.min()과 which.max()는 주어진 벡터에서 최소 또는 최대 값이 저장된 색인을 찾는 함수이다.
aggregate() : aggregate()는 보다 일반적인 그룹별 연산을 위한 함수
dim(iris) #데이터 차원 확인
names(iris) #변수 이름 또는 컬럼의 이름 확인
str(iris) #Structure
attributes(iris) #attributes
iris[1:5,] #처음 5행
iris[1:10, "Sepal.Length"] #꽃받침조각의 길이 처음 10개 행
iris$Sepal.Length[1:10] #꽃받침조각의 길이 처음 10개 행
summary(iris)
table(iris$Species) #Frequency
pie(table(iris$Species)) #PIe Chart
var(iris$Sepal.Length) #Sepal.Length의 Variance
cov(iris$Sepal.Length, iris$Petal.Length) #Covariance of two variables
cor(iris$Sepal.Length, iris$Petal.Length) #Correlation of two variables
hist(iris$Sepal.Length) #histogram
plot(density(iris$Sepal.Length)) #Density
plot(iris$Sepal.Length, iris$Sepal.Width) #산점도
plot(iris) #Pair plot
pairs(iris) #Pair plot
|