Types of Objects in R

R language operates on entities which are known as objects. There are various types of objects in R exists, such as vectors, matrices, factors, lists, data frames, functions, etc. In R, objects are classified into several types based on their structure and content.

Types of Objects in R

Matrices

Arrays or matrices are multi-dimensional generalizations of vectors. Matrices are vectors indexed by two or more indices and displayed specially. Matrices contain rows and columns of homogeneous elements. The class of matrices object is “matrix”. See more about matrices by following the matrices.

Factors

Factors are used to handle categorical data. Factor variables may contain two or more levels, used to define the group or category of the variable. See more about factors in detail by following factors.

Lists

Lists are a general form of vectors in which the various elements need not be of the same type, that is, lists may contain heterogeneous data. Lists are often vectors or lists themselves. Lists are a convenient way to get different results from statistical computation, as lists may contain different types of data objects. See more about lists by following the link Lists.

Data Frame

Data frame objects are similar to matrix object structures. Unlike matrix objects, the data frame objects may contain different types of objects, that is, heterogeneous data. Think of the data frame as “Data Matrices” with one row per observational unit but with (possibly) both numerical and categorical variables. Many experiments are best described by data frames, the treatments are categorical but the response (output) is numeric. For more details about the data frame, follow the link data frame.

Functions

Functions are themselves objects. In R Language, functions can be stored in the project’s workspace. Functions provide a quick, simple, and convenient way to extend the functionality and power of R. See more about functions and customization of functions, see Functions.

Examples of Different Types of Objects in R

# Scalar types
x <- 5        # Numeric (integer)
y <- 3.14159  # Numeric (double)
z <- "Hello"  # Character
b <- TRUE     # Logical

# Vector types
numbers <- c(1, 2, 3, 4)                  # Numeric vector
fruits <- c("apple", "banana", "orange")  # Character vector
bools <- c(TRUE, FALSE, TRUE)             # Logical vector

# Data frame
df <- data.frame(
  name = c("Ali", "Babar", "Usman"),
  age = c(25, 30, 28),
  city = c("Multan", "Lahore", "Karachi")
)

# Matrix
mat <- matrix(1:9, nrow = 3, ncol = 3)

# List
my_list <- list(
  numbers = numbers,
  fruits = fruits,
  df = df
)

# Factor
colors <- factor(c("red", "blue", "green", "red"))
Types of Objects in R Language

https://itfeature.com, https://gmstat.com

Logical Vectors in R: A Quick Guide

The logical vectors in R Language are the vectors whose elements are TRUE, FALSE, or NA (Not Available). R language allows the easy manipulation of logical (or relational) quantities. The TRUE and FALSE values are often used to represent the conditions or Boolean expressions.

In R, the reserved words TRUE and FALSE are often abbreviated as T and F, respectively. However, the T and F are not reserved words and hence can be overwritten by the user. Therefore, instead of T and F; it is better to use TRUE and FALSE.

Logical vectors in R can be created by:

  • Direct assignment of TRUE and FALSE values to the elements of a vector
  • By using conditions (use of logical or comparison operators) on elements of the vectors. (Operators in R Language)
  • Using ifelse statement

Creating Logical Vectors in R Using Direct Assignment

v1 <- c(TRUE, FALSE, TRUE)
print(v1)
## Output
[1]  TRUE FALSE  TRUE

Creating Logical Vectors using Comparison Operators

x <- 5
y <- 10
v2 <- x > y
print(v2)
## Output
FALSE
Logical Vectors in R using Comparison Operators
data <- c(1, 2, 3, 4, 5)
v3 <- data < 3
print(v3)
## Output
[1]  TRUE  TRUE FALSE FALSE FALSE
Logical Vectors in R

Creating Logical Vectors using ifelse Statement

The ifelse statement can also be used to create/generate logical vectors in R Language. For example,

data <- c(3, 4, 6, 8, 4, 4, 6, 10, -5)
v4 <- ifelse(data > 5, TRUE, FALSE)
print(v4)

## Output
[1] FALSE FALSE  TRUE  TRUE FALSE FALSE  TRUE  TRUE FALSE

From the above examples, the logical vectors are usually generated by conditions. The length of the logical vector will be the same as that of the vectors to which the condition is applied. Depending on the condition, the corresponding elements result in FALSE if the element of the vectors does not meet the condition specified and TRUE where it is.

Logical Operators

The following is the list of logical operators

Logical OperatorShort Description
<Less than
>Greater than
<=Less than or Equal to
>=Greater than or Equal to
==Exactly Equal to
!=Not Equal to

In addition to logical operators, the relational/logical operators are:

OperatorShort Description
& (and)It takes two logical values and returns TRUE only if both values are TRUE themselves
| (or)It takes two logical values and returns TRUE if just one value is TRUE.
! (not)It negates the logical value it’s used on

Use of Logical Operators

Filtering Data

The logical vectors in R language are commonly used for filtering the data. For example,

data <- data.frame(x = c(1, 2, 3, 4, 5), y = c("a", "b", "c", "d", "e"))
filtered_data <- data[data$x > 3, ]
Logical Vectors in R: Filtering Data

Ordinary Arithmetic

Logical vectors may be used in ordinary arithmetic, in which case they are coerced into numeric vectors, FALSE becoming 0 and TRUE becoming. For example,

x = c(TRUE, FALSE, FALSE, TRUE)
y = c(5, 10, 6, 15)
x+y

## Output
[1]  6 10  6 16

sum(x)
## Output
[1] 2

Logical vectors in R language are a fundamental tool for working with conditions and Boolean expressions. Understanding how to create, manipulate, and use logical vectors is essential for effective data analysis and programming in R.

https://itfeature.com, https://gmstat.com

Vector Arithmetic in R: Made Easy 2024

The post is about vector arithmetic in R Language. In R, different mathematical operations can be performed on vectors, that is vectors can be used in arithmetic expressions. The vector arithmetic operations are performed element by element.

It is important to note that vectors occurring in the same mathematical expression need not be of the same length (size). The shorter vectors in the arithmetic expression are recycled until they match the length of the longest vector.

Vector Arithmetic Operations

The vector arithmetic operations can be performed using arithmetic operators and vector functions. The +, -, *, /, and ^ are elementary arithmetic operators. The arithmetic functions are also available, such as, log, exp, sin, cos, tan, sqrt, and so on. The max() and min() functions returns the largest and smallest elements of a vector, respectively. Similarly, the range() function results in a vector of length two having minimum and maximum values from the vector, that is, c(min(x), max(x)).

The length(x) function returns the number of elements (size or number of observations) in a vector say $x$, sum(x) gives the total (sum) of the elements in vector $x$, and prod(x) returns the product of elements.

Instead of performing simple arithmetics (+, -, *, and /), we will use some functions for arithmetic that can be performed on a vector.

Vector Arithmetic in R: Examples

The basic vector arithmetic in R can be performed just like adding numbers on a calculator.

x <- c(1, 2, 3, 4, 5)
y <- c(4, 5, 6, 7, 8)

# Addition
x + y

# Subtraction
x - y

# Multiplication
x * y

# Division
x / y

# Exponentiation
x ^ y

One can compute the average (mean value) of a vector by performing arithmetics on a vector, such as

x <- c(5, 10, 5, 3, 5, 6, 7, 8, 4, 3, 10)
sum(x)/ length(x)

## Output
6

The built-in function for the computation of the average value of a vector is mean(), that is mean(x).

mean(x)

## output
6

The variance can also be computed by performing arithmetics on a vector say $x$.

sum((x - mean(x))^2)/ (length(x)-1)

## Output
6.2
Vector Arithmetic in R Language

The built-in function for sample variance is var(x). Note that if the argument var() is a $n$-by-$p$ matrix, a $p$-by-$p$ matrix of the sample covariance matrix will return.

var(x)

## Output
6.2

The sort(x) function returns a vector of the same size as $x$ with the elements arranged in increasing order.

sort(x)

## Output
[1]  3  3  4  5  5  5  6  7  8 10 10

The min() and max() functions are used to select the smallest and largest values from the argument, even if the argument contains several vectors.

In summary, Vector arithmetic is a fundamental aspect of R programming, enabling efficient and concise mathematical operations on sequences of elements. By understanding the basic operations, vector recycling, and available functions, you can effectively leverage vectors to solve a wide range of problems in data analysis and scientific computing.

https://rfaqs.com vector arithme5ics

https://itfeature.com, https://gmstat.com