R Data Types
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
A data type of a variable specifies the type of data that is stored inside that variable. For example,
x <- 123L
Here, 123L
is an integer data. So the data type of the variable x is integer
.
We can verify this by printing the class of x.
x <- 123L # print value of x print(x) # print type of x print(class(x))
Output
[1] 123 [1] "integer"
Here, x is a variable of data type integer
.
Different Types of Data Types
In R, there are 6 basic data types:
logical
numeric
integer
complex
character
raw
Let's discuss each of these R data types one by one.
1. Logical Data Type
The logical
data type in R is also known as boolean data type. It can only have two values: TRUE
and FALSE
. For example,
bool1 <- TRUE print(bool1) print(class(bool1)) bool2 <- FALSE print(bool2) print(class(bool2))
Output
[1] TRUE [1] "logical" [1] FALSE [1] "logical"
In the above example,
- bool1 has the value
TRUE
, - bool2 has the value
FALSE
.
Here, we get "logical"
when we check the type of both variables.
Note: You can also define logical variables with a single letter - T
for TRUE
or F
for FALSE
. For example,
is_weekend <- F print(class(is_weekend)) # "logical"
2. Numeric Data Type
In R, the numeric
data type represents all real numbers with or without decimal values. For example,
# floating point values weight <- 63.5 print(weight) print(class(weight)) # real numbers height <- 182 print(height) print(class(height))
Output
[1] 63.5 [1] "numeric" [1] 182 [1] "numeric"
Here, both weight and height are variables of numeric
type.
3. Integer Data Type
The integer
data type specifies real values without decimal points. We use the suffix L
to specify integer data. For example,
integer_variable <- 186L print(class(integer_variable))
Output
[1] "integer"
Here, 186L
is an integer data. So we get "integer"
when we print the class of integer_variable.
4. Complex Data Type
The complex
data type is used to specify purely imaginary values in R. We use the suffix i
to specify the imaginary part. For example,
# 2i represents imaginary part complex_value <- 3 + 2i # print class of complex_value print(class(complex_value))
Output
[1] "complex"
Here, 3 + 2i
is of complex
data type because it has an imaginary part 2i
.
5. Character Data Type
The character
data type is used to specify character or string values in a variable.
In programming, a string is a set of characters. For example, 'A'
is a single character and "Apple"
is a string.
You can use single quotes ''
or double quotes ""
to represent strings. In general, we use:
''
for character variables""
for string variables
For example,
# create a string variable fruit <- "Apple" print(class(fruit)) # create a character variable my_char <- 'A' print(class(my_char))
Output
[1] "character" [1] "character"
Here, both the variables - fruit and my_char - are of character
data type.
6. Raw Data Type
A raw
data type specifies values as raw bytes. You can use the following methods to convert character data types to a raw data type and vice-versa:
charToRaw()
- converts character data to raw datarawToChar()
- converts raw data to character data
For example,
# convert character to raw raw_variable <- charToRaw("Welcome to Programiz") print(raw_variable) print(class(raw_variable)) # convert raw to character char_variable <- rawToChar(raw_variable) print(char_variable) print(class(char_variable))
Output
[1] 57 65 6c 63 6f 6d 65 20 74 6f 20 50 72 6f 67 72 61 6d 69 7a [1] "raw" [1] "Welcome to Programiz" [1] "character"
In this program,
- We have first used the
charToRaw()
function to convert the string"Welcome to Programiz"
to raw bytes.
This is why we get"raw"
as output when we print the class of raw_variable.
- Then, we have used the
rawToChar()
function to convert the data in raw_variable back to character form.
This is why we get"character"
as output when we print the class of char_variable.
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.