R Basic

is.logical() Function: Check If a Value is Logical in R

R is.logical() function checks whether an input object’s data type is logical. If the object is logical whose values are either TRUE or FALSE, it returns TRUE; otherwise, it is FALSE.

This function checks the underlying type of the object.

Due to the nature of the function, you can use it in conditional statements to validate user input.

Syntax

is.logical(obj)

Parameters

Name Value
obj It is an object that needs to be checked for a logical type.

Testing basic values

logical_val_one <- TRUE
logical_val_two <- FALSE

is.logical(logical_val_one) # TRUE
is.logical(logical_val_two) # TRUE

You can see that TRUE and FALSE are logical values and return TRUE.

Let’s pass non-logical values and see the output:

is.logical(0) # FALSE

is.logical("hello") # FALSE

0 is the logical gate, but in R, it is a numeric value, so it returns FALSE.

Testing a Vector

If you create a vector that contains TRUE or FALSE values, this function returns TRUE.

vec_logical <- c(TRUE, FALSE, TRUE, FALSE)

is.logical(vec_logical) # TRUE

If you pass a non-logical vector, it returns FALSE.

non_logical_vec <- c(1, 2, 3, 4)

is.logical(non_logical_vec) # FALSE

Testing a List

The lists are not logical objects, so even if you pass all the elements of the list as logical values, it still returns FALSE.

list_obj <- list(TRUE, FALSE)

is.logical(list_obj) # FALSE

Testing NA (Not Available)

NA represents missing value, and missing value can be anything, including logical type. So, if you pass NA to the is.logical() function, it returns TRUE.

is.logical(NA) # TRUE

Testing NaN (Not A Number)

NaN represents undefined numerical results, which means they are not logical values by default and cannot become one. So, it returns FALSE.

is.logical(NaN) # FALSE

Testing NULL

NULL represents an empty object, which means there is nothing, including logical values. Hence, it returns FALSE.

is.logical(NULL) # FALSE

That’s all!

Recent Posts

How to Create an Empty Vector and Append Values in R

R vectors are atomic, which means they have homogeneous data types. They are contiguous in…

17 hours ago

How to Remove Single and Multiple Columns from Data Frame in R

DataFrames are like tables that contain rows and columns. Each column can have a different…

1 day ago

How to Convert Date to Numeric in R

Dates in R are stored as the number of days since 1970-01-01, so converting a…

3 days ago

How to Create a Data Frame from Vectors in R

In R, you can think of a vector as a series of values in a…

2 weeks ago

R dplyr::filter() Function: Complete Guide

The dplyr filter() function in R subsets a data frame and retains all rows that…

2 weeks ago

R distinct() Function from dplyr

The dplyr::distinct() function in R removes duplicate rows from a data frame or tibble and keeps…

2 weeks ago