Tutorials References Menu

R Lists


Lists

A list in R can contain many different data types inside it. A list is a collection of data which is ordered and changeable.

To create a list, use the list() function:

Example

# List of strings
thislist <- list("apple", "banana", "cherry")

# Print the list
thislist
Try it Yourself »

Access Lists

You can access the list items by referring to its index number, inside brackets. The first item has index 1, the second item has index 2, and so on:

Example

thislist <- list("apple", "banana", "cherry")

thislist[1]
Try it Yourself »

Change Item Value

To change the value of a specific item, refer to the index number:

Example

thislist <- list("apple", "banana", "cherry")
thislist[1] <- "blackcurrant"

# Print the updated list
thislist
Try it Yourself »

List Length

To find out how many items a list has, use the length() function:

Example

thislist <- list("apple", "banana", "cherry")

length(thislist)
Try it Yourself »

Check if Item Exists

To find out if a specified item is present in a list, use the %in% operator:

Example

Check if "apple" is present in the list:

thislist <- list("apple", "banana", "cherry")

"apple" %in% thislist
Try it Yourself »

Add List Items

To add an item to the end of the list, use the append() function:

Example

Add "orange" to the list:

thislist <- list("apple", "banana", "cherry")

append(thislist, "orange")
Try it Yourself »

To add an item to the right of a specified index, add "after=index number" in the append() function:

Example

Add "orange" to the list after "banana" (index 2):

thislist <- list("apple", "banana", "cherry")

append(thislist, "orange", after = 2)
Try it Yourself »

Remove List Items

You can also remove list items. The following example creates a new, updated list without an "apple" item:

Example

Remove "apple" from the list:

thislist <- list("apple", "banana", "cherry")

newlist <- thislist[-1]

# Print the new list
newlist
Try it Yourself »

Range of Indexes

You can specify a range of indexes by specifying where to start and where to end the range, by using the : operator:

Example

Return the second, third, fourth and fifth item:

thislist <- list("apple", "banana", "cherry", "orange", "kiwi", "melon", "mango")

(thislist)[2:5]
Try it Yourself »

Note: The search will start at index 2 (included) and end at index 5 (included).

Remember that the first item has index 1.


Loop Through a List

You can loop through the list items by using a for loop:

Example

Print all items in the list, one by one:

thislist <- list("apple", "banana", "cherry")

for (x in thislist) {
  print(x)
}
Try it Yourself »

Join Two Lists

There are several ways to join, or concatenate, two or more lists in R.

The most common way is to use the c() function, which combines two elements together:

Example

list1 <- list("a", "b", "c")
list2 <- list(1,2,3)
list3 <- c(list1,list2)

list3
Try it Yourself »