728x90
반응형
· 벡터(Vector) 자료
R에서는 한 줄(열)로 되어있는 자료를 '벡터'라고 부른다.
변수를 만드는 방법부터 벡터 자료를 만드는 순서를 확인하자.
치환 및 할당 선언을 할 때 <-, ->, =을 사용한다는 점을 기억하자.
참고로 <-을 빠르게 입력하기 위해서 Alt + '-'를 누르면 바로 기입이 된다.
· 변수 생성
<예제>
# 변수 생성 방법
var <- 1
var2 = 2
3 -> var3 # 사실 이렇게 쓰는 사람은 많지 않지만 표현은 가능하다.
print(var, var2, var3) # print는 하나의 객체만 출력할 수 있다.
cat(var, var2, var3) # 복수의 객체를 출력할 땐 cat을 사용한다.
vb.abc = 123 # 변수명을 만들어 줄 때 '.'은 단순 문자역할이다.
vb.abc
ls() # 현재 변수로 지정된 객체들의 이름을 볼 수 있다.
ls.str() # 변수들의 속성을 볼 수 있다.
rm(list = ls()) # 모든 변수 객체들을 지우는 명령어
gc() # garbage collector : R에서는 메모리를 많이 사용하므로 메모리 회수를 위한 명령어이다.
· 데이터의 유형(종류)
데이터의 종류도 여러 가지가 있다.
숫자형 : numeric, integer, double 문자형 : character 논리형 : logical 결측 : NA factor : 요인형 변수 closure : 함수 |
# 자료의 종류
# 숫자
a = 13
object.size(a) # a객체의 bytes 크기를 알려준다.
typeof(a) # 실수로 나온다.
typeof(3.5) # 대부분의 숫자들은 전부 double이라고 본다.
typeof(5L) # 숫자 뒤에 'L'을 붙여주면 integer : 정수가 된다.
b = as.integer(a) # 정수로 형태 변환해서 b에 할당
typeof(b)
is(b) # b가 갖고 있는 속성들이 전부 나온다.
is.vector(b) # TRUE : b는 vector 자료이기 때문이다.
is.integer(b) # TRUE
# 문자
c = "김시민"
is(c)
typeof(c)
# boolean 표현 = logical
d = TRUE # 또는 T
e = F # 또는 FALSE
typeof(d) # logical
typeof(e) # logical
# NA : 결측치
f = NA # 결측 데이터
is.na(f) # TRUE
length(NA) # 길이 : 1
length(NULL) # 길이 : 0
length(NaN) # 길이 : 1
sum(4, 7, NA) # 결측치가 하나 이상 있으면 어떤 수식이든 결과는 NA가 나온다.
sum(4, 7, NA, 23, na.rm = T) # na.rm = T : 결측치를 제거한다. 결과 : 34
# NaN : 숫자가 아닌 것들
Inf * 0
0 / 0
Inf - Inf
Inf + -Inf
Inf + Inf # 예외적으로 Inf로 나온다.
g = 3.14 - 5i
typeof(g) # complex : 문자와 숫자가 섞인 복합 객체
Re(g) # 실수 부분인 3.14만 출력된다.
Im(g) # 허수 부분의 -5가 출력된다.
# factor : 요인형 변수
h = c("two", "one", "three", "one", "two")
h # "two" "one" "three" "one" "two"
summary(h) # 객체의 정보 요약
is.factor(h) # FALSE
is.character(h) # TURE
H = as.factor(h) # 요인형 변수로 변환
H # Levels: one three two
summary(H) # one three two
# 2 1 2
# 함수
i = function(){
a # 위에서 작성한 a의 값을 가져온다.
return(a)
}
i() # 함수 호출 결과 : 13
typeof(i) # closure
· 데이터의 자료 구조 확인
model() - 데이터의 성격
class() - 자료의 구조 성격
typeof() - 자료의 형태 확인
# 문자열의 형태
x = TRUE
cat(is(x), ":", mode(x), class(x), typeof(x))
x = 3
cat(is(x), ":", mode(x), class(x), typeof(x))
x = 3L
cat(is(x), ":", mode(x), class(x), typeof(x))
x = "문자열"
cat(is(x), ":", mode(x), class(x), typeof(x))
logical vector : logical logical logical numeric vector : numeric numeric double integer double numeric vector data.frameRowLabels : numeric integer integer character vector data.frameRowLabels SuperClassMethod : character character character |
· 부가적인 설명
base::cat(is(x), ":", mode(x), class(x), typeof(x)) # base 패키지 안의 cat <- 원래 표현되는 경로이다.
available.packages() # 설치된 패키지를 확인하는 명령어
dim(available.packages()) # 설치된 패키지의 개수
sessionInfo() # R버전과 현재 적용된 패키지 등의 정보를 보여준다.
install.packages("plyr") # 패키지를 설치하는 방법
library(plyr) # 패키지 적용하는 방법1
require(plyr) # 패키지 적용하는 방법2
library(help=plyr) # 해당 패키지의 설명이 나온다.
search() # 현재 패키지의 정보를 알려준다.
ls("package:plyr") # 적용된 패키지의 plyr에 속한 부속 기능 명령어들
data(package = "plyr") # 패키지의 내부 정보를 볼 수 있다.
remove.packages("plyr") # 패키지 삭제 방법
728x90
반응형
'통계 프로그램 > R - Programing' 카테고리의 다른 글
Test - Training + R예제 (0) | 2021.08.01 |
---|---|
RStudio에서 R버전 업데이트 하기 (0) | 2021.06.17 |
R - 기초 (0) | 2021.06.17 |