데이터 타입 설명에 앞서, 값을 저장하고 추출하는 방법을 알아보기 위해 R에서 사용하는 변수에 대해서 살펴보자.
변수 이름 규칙
R의 변수명은 알파벳, 숫자, _(언더스코어), .(마침표)로구성되며, -(하이픈)은 사용할 수 없다.
첫 글자는 알파벳 또는, . 으로 시작해야 한다. 만약 . 으로 시작한다면 . 뒤에 숫자가 올 수 없다.
예를 들어, 다음은 모두 올바른 변수명이다.
a b a1 a2 .x |
다음은 올바르지 않는 변수명이다.
2a .2 a-b |
한 가지 흥미로운 사실은 R 1.9.0 이전에는 변수명에 _를 사용할 수 없었다는 점이다. 이런 역사적인 이유로 다른 언어에서 흔히 _를 사용할 만한 상황에서 R은 .을 사용한다. 예를 들어, training_data, validation_data 같은 변수명 대신 data.training, data.validation과 같이 마치 객체의 속성을 접근하는 것처럼보이는 명명 방식이 종종 사용된다.
변숫값 할당
변수에 값을 할당할 때는 <-, <<- 또는 = 연산자를 사용한다. <-와 <<- 뒤에서 설명하겠지만 어느 스코프에 있는 변수에 값을 할당하는지에 차이가 있다. 그러나 <-와 =는 대부분의 경우에 바꿔서 사용할 수 있고, 따라서 둘 중 어느 것을 사용해야 하는지는 다소 논쟁적인 주제다. 이 책에서는 <- 연산자를 사용했는데, 그 이유 중 하나는 =는 때에 따라 사용할 수 없는 경우가 있기 때문이다.
Note. <-와 =의 차이 할당 연산자 중 =는 명령의 최상위 수준에서만 사용할 수 있는 반면 <-는 어느 곳에서나 사용할 수 있다. 따라서 함수 호출과 동시에 변수에 값을 할당하는 목적으로는 <-만 사용할 수 있다. 다음은 1,2,3을 저장한 벡터를 x에 할당한 후 이 값들의 평균을 구하고 x에 저장된 값을 출력한 예다.
>mean(x<-c(1,2,3)) [1] 2 >x [1] 1 2 3
같은 상황에서 =를 사용하면 x에 값이 저장되지 않는다.
>mean(x=c(1,2,3) [1] 2 >x Error: object 'x' not found >
이 차이 때문에 =를 사용하면 경우에 따라 표현력에 한계가 있을 수 있다. |
R을 이용한 데이터 처리&분석 실무 中
'R > R을 이용한 데이터 처리&분석 실무' 카테고리의 다른 글
타입 판별, 타입변환 (0) | 2020.01.29 |
---|---|
데이터 프레임 (0) | 2020.01.29 |
리스트 (0) | 2020.01.28 |
벡터 (0) | 2020.01.28 |
스칼라 (0) | 2020.01.27 |