Data Types and Variables in R

R is a free software environment for statistical computing and graphics. It compiles and runs on a wide variety of UNIX platforms, including Windows and macOS. Everything in R is an object. In this post, we will see the data types and variables in the R programming language.

Variable Types

  • Character – Strings
  • Integer- Integers
  • Numeric – Integers and Fractions
  • Logical -Boolean
  • Complex – Complex numbers
  • Factor -Categorical variable where each label is a category

Data Structures in R

R intuitively decides variable type in the background and assigns a class to the variable. R has a variety of data types and is case-sensitive when defining variables. A variable named ‘a’ is not the same as ‘A’.

  • Atomic Vectors (numerical, Integer, character, logical)
  • Matrix
  • Data Frames
  • Lists
  • Factors

Here Atomic means

R provides many functions to examine features of vectors and other objects.

  • class() : Gives information about the object on a high level
  • typeof(): Gives information about the object’s data type on low level
  • length(): Gives the length of the object
  • attributes(): gives the information about the metadata if the object has

Variable in R

Variables in R are typically assigned using <- but can also be assigned using <- or -> ,as in x <-1 or 1 -> x

#Create variables in R and assign some value
x <- 139 +121
x

# Overwrite variables in R
x <- x/60
x

# Assign Character Values
myName <- "Nitendra Gautam"

"Nitendra Gautam" -> newName

typeof(myName) # Gives the data type of myName

# To remove the variable from Memory use rm(variable_name) command
# Removes the variables x from Memory 
rm(x)

Order of Operation in R

In order to put emphasis on the order of operations, use the small bracket.

For example : totalHours <- (139 + 121) /60

Numeric Data Type

It includes the number that contains decimal points which is the default.

# Assign a value of 3 to  variable a
a <- 3

print(a)
# Check Data Types in R 
paste(" Class of A is ", class(a))

# Convert numeric data type into integer
b <- as.integer(a)
paste("Class of B is " , class(b ))

Character Data Type

d <-"Nitendra Gautam"
print(d)
paste("Class of d is ",class(d))

e <- '12345'
print(e)
paste(" class of e is ",class(e))

Factors Data Type

Factors data type refers to the qualitative variables. An example can be “Good”” and “Bad”.

factorVariable <- factor(c("male","female"))

print(factorVariable)

#Factors Levels
levels(factorVariable)

#Class of the factor
class(factorVariable)

#Class of Factor Levels
class(levels(factorVariable))

#Number of Levels
nlevels(factorVariable)


Logical data Type

k <- "TRUE"
class(k)

# Create a factor variable with 3 Levels and 6 Items
sV <- factor(c("good","bad","ugly","good","bad","ugly"))

class(sV)

levels(sV)

Vectors

Vector is a type of object which is used to store multiple data of same data type.

Technically, vectors can be one of two types:

  • Atomic vectors
  • Lists

In general, vector refers to the atomic types, not the lists. Vector can have character, integer, numeric or logical value.

v1 <- c(1,2,5.3,6,-2,4,5) # create a Numeric Vector 
v2 <- c("one","two","three","four","five") # Character Vector
v3 <- c(TRUE,FALSE,TRUE,FALSE) # Logical Vector

# Refer to the element of the vector using Subscript 
v1[c(3,4)]  #Third and Fourth Elements of Vector

v1[4] # Get Fourth Element from Vector V1

v1[2:6]  # Get elements fomr 2nd to 6th element 

class(v2) # Class of Character Vector

v2[2:5] # Get elements from second to 5th element

 typeof(v2)  #Gives the types of Vector V2
 

Adding Elements in character Vector

z <-c("Sam","Ram","Hari")

## Add oneelements in Vector
z <- c(z,"Mike")

## Add Another elements in Vector
z <- c(z,"Shyam")

Given a Large Vector find the first and Last Element of the Vector

ab <- c(1:50) # Large vector from 1 to 50

ab[1] # Get the first Element 
ab[length(ab)] # Get the last element which will be at the index equal to length of Vector

ab[c(ab[1],ab[length(ab)])]

References

R Data Structures

R Project