해당 포스트에서는 R에서 사용하는 숫자(Number) 데이터 타입을 소개합니다.
R에서는 사용되는 숫자(Number) 데이터 타입은 3가지로 구분됩니다.
- Numeric : 정수와 부동 소수점 숫자가 포함됩니다. (e.g. 123, 32.43 등)
- Integer : 정수만 포함되며 보통
L
로 표시됩니다. (e.g. 23L, 39L 등) - Complex : 허수부가 있는 복소수가 포함됩니다. (e.g. 2+3i, 5i 등)
Numeric Data Type
숫자 데이터 타입은 R에서 가장 자주 사용되는 데이터 타입입니다. 숫자와 함께 변수 선언할 때마다 사용되는 기본 데이터 타입입니다.
숫자 데이터 타입이 있는 변수에 모든 타입의 숫자(소수 포함 또는 제외)를 저장할 수 있습니다. 예를 들어,
# decimal variable
my_decimal <- 123.45
print(class(my_decimal))
# variable without decimal
my_number <- 34
print(class(my_number))
[1] "numeric" [1] "numeric"
여기서 my_decimal
및 my_number
변수는 모두 숫자 타입입니다.
Integer Data Type
정수는 소수 없이 값을 가질 수 있는 숫자 데이터 타입입니다. 변수가 미래에도 소수를 가질 수 없다고 확신할 때 주로 사용됩니다.
정수 변수를 생성하려면 값 끝에 접미사 L
을 사용해야 합니다. 예를 들어,
my_integer <- 123L
# print the value of my_integer
print(my_integer)
# print the data type of my_integer
print(class(my_integer))
[1] 123 [1] "integer"
여기서 변수 my_integer
는 123L
값을 가지게 됩니다. 값 끝에 있는 접미사 L
은 my_integer
가 정수 타입임을 나타냅니다.
Complex Data Type
R에서 복소수 데이터 유형을 가지는 변수는 허수부가 있는 값을 포함합니다. i
를 접미사로 사용하여 표시할 수 있습니다. 예를 들어,
# variable with only imaginary part
z1 <- 5i
print(z1)
print(class(z1))
# variable with both real and imaginary parts
z2 <- 3 + 3i
print(z2)
print(class(z2))
[1] 0+5i [1] "complex" [1] 3+3i [1] "complex"
여기에서 변수 z1
및 z2
는 접미사 i
로 표시된 허수부가 있는 복소수 데이터 유형으로 선언되었습니다.
FAQ
숫자(number)를 Numeric
타입으로 변환
R에서는 as.numeric()
함수를 사용하여 숫자를 Numeric
타입으로 변환할 수 있습니다. 예를 들어,
# integer variable
a <- 4L
print(class(a))
# complex variable
b <- 1 + 2i
print(class(b))
# convert from integer to numeric
x <- as.numeric(a)
print(class(x))
# convert from complex to numeric
y <- as.numeric(b)
print(class(y))
[1] "integer" [1] "complex" [1] "numeric" [1] "numeric" Warning message: imaginary parts discarded in coercion
여기에서 복소수(complex)를 Numeric
타입으로 변환하는 동안 허수부가 버려지는 것을 볼 수 있습니다.
그렇다면 숫자를 복수수(complex) 타입으로 변환하려면 어떻게 해야 할까요?
숫자(number)를 complex
타입으로 변환
R에서는 as.complex()
함수를 사용하여 임의의 숫자를 복소수 값으로 변환할 수 있습니다. 예를 들어,
# integer variable
a <- 4L
print(class(a))
# numeric variable
b <- 23
print(class(b))
# convert from integer to complex
y <- as.complex(a)
print(class(y))
# convert from numeric to complex
z <- as.complex(b)
print(class(z))
[1] "integer" [1] "numeric" [1] "complex" [1] "complex"
관련 링크
도움이 되셨다면 💗공감 꾸욱 눌러주세요! 😊
'programming' 카테고리의 다른 글
R에서 문자열 조작하기 (String Manipulation in R) (0) | 2022.03.04 |
---|---|
폴더 내 csv, txt 파일 모두 불러오기 (Basic R : Read so many CSV files) (0) | 2021.09.03 |
R에서 날짜 데이터 다루기 (Date Formats in R) (0) | 2021.08.28 |