본문 바로가기

Quant/R

R 벡터, 데이터프레임

 ㅇ벡터

대부분의 프로그래밍은 스칼라가 가장 작은 데이터 단위

 

하지만 R에서는 가장 작은 데이터는 벡터. R에서 1이라는 값은 정수 스칼라 1이 아니라 벡터 1임. 원소 한개 만 있는 벡터

 

이는 r이 통계를 위해 만들어졌기 때문

 

ㅇ데이터프레임

여러 개의 벡터가 모여서 하나의 데이터프레임을 구성

통계에서 변수가 모여 집합자료가 되듯이 R에서는 벡터가 모여 데이터프레임을 구성

 

변수 - 범주형 변수

          - 명목형 변수

          - 순서형 변수

       - 수치형 변수

          - 이산형 변수

          - 연속형 변수

 

벡터 - character(문자열)

       - factor(순서형 변수와 명목형 변수 모두)

       - integer(이산형변수)

       - numeric(연속형 변수)

 

ㅇ함수

c() : 벡터를 만드는 함수

is() : 벡터 종류 확인

as() : as.factor(), as.integer() 해당 벡터로 만들어줌

factor(x, ordered=T); ordered 인자의 논리값에 따라 오름차순, 내림차순으로 순서를 정할 수 있음

factor(c("남","여","여","남"), levels=c("남","여","소녀"))

 

 

a <- c(1L, 2L, 3L)

; 숫자뒤에 L을 붙이면 number가 아니라 interger로 인식

 

ㅇ빅테이터를 다루게 된다면 integer와 numeric은 반드시 구분해야. 왜냐하면 CPU는 부동소수점보다 정수의 연산을 훨씬 더 빠르게 하기 때문. 부동 소수점 연산은 GPU에서 빠르게 처리. R에서도  GPU를 통한 부동소수점 연산 가능

 

 

ㅇ데이터프레임: r에서 가장 인기 있는 데이터 객체, 벡터의 모음으로 만들어짐

 

DF<- data.frame(a1, a2, a3); 주의할 점은 데이터프레임에 들어갈 벡터들의 길이(원소 개수)가 반드시 같아야함

 

DF <- data.frame(count=a1, food=a2, meanCount=a3); data.frame에 벡터를 넣을 때 이름을 넣어주면 원하는 변수명으로 만들 수 있음

 

*str()함수: 어떤 변수가 있는지 알고 싶을때 사용. 객체의 구조를 알려줌

 

DF$height; 데이터프레임 객체에 $를 붙이고 불러오고 싶은 변수의 이름을 적으면, 해당 변수(벡터)만 선ㅌ택할 수 있음

 

mean(DF$height); 바로 함수에 넣을 수도 있고,

Height <- DF$height; 다른 객체에 저장할 수도 있음

 

height  변수가 7번째 열에 있으니 

DF[[7]] 로도 해당 벡터를 불러올 수 있음

 

단 여기서 DF[7]은 height 데이터 프레임을 불러오게됨

 

ㅇ여러개 변수도 선택 가능

 

DF[c(6,7)] 또는 DF[(c("bloodtype","height")], DF[,7], DF[2,], DF[2,1]; 변수가 혹은 관측값, DF[,"height"]

 

DF[,c(6,7)] 은 데이터프레임이고, DF[,7]은 벡터임. 따라서 여러 개를 가져올때는 객체 종류가 바뀌므로 한 개 변수를 가져오면서 이 방법을 사용하는 것은 비추천

 

* attach[DF]; 함수를 사용하면 검색 목록에 해당 데이터프레임이 올려짐

이렇게 하면, height라고만 해도 바로 변수로 접근 가능. 다만 이미 있는 객체 중에서 겹치는 객체가 있는지 살펴야하고, 이렇게 불러온 height는 DF와 상관 없는 별도 객체임

 

 

'Quant > R' 카테고리의 다른 글

R 기초  (0) 2020.05.26