A key-value pair can be explained as a set of two linked data items where a key uniquely identifies a value or a set of values in the data. Since a list can hold multiple data-types data, we can have a key-value pair stored in the list
Method 1:
We can assign variables to each key and value. Store each key-value pair after building the list using square brackets.
rm(list = ls())
# create key value variables
key1 <- "Age"
value1 <- 21
key2 <- "Name"
value2 <- "Pulkit"
# create the list
mylist <- list()
# Build up key value pairs
mylist[[ key1 ]] <- value1
mylist[[ key2 ]] <- value2
# Access value using the key
print(mylist$Age)
print(mylist$Name)
Output:
21 Pulkit
Method 2:
Another way of doing this without using any additional variables is to specify the key and the value in the list() function while creating the list.
Example
rm(list = ls())
# Creating the list
mylist<-list("Name"="Pulkit","Age"=21,
"Gender"="Male")
# Access value using the key
print(mylist$Age)
print(mylist$Gender)
Output:
21 Male
Method 3: Using setNames()
Another approach we can take to add a key-value pair in the list is to setNames() function and inside it, we use as.list(). Basically what we will have here is a syntax like given below, which will create a list and assign all the keys with their respective values.
Syntax:
variable<-setNames(as.list(values), keys)
Example:
rm(list = ls())
# initialize keys and respected values
students <- c("Pulkit", "Ritika", "Parth",
"Vishesh", "Dharvik", "krishav",
"Reshav")
marks <- c(75, 92, 97, 80, 85, 87, 52)
# make the list
results <- setNames(as.list(marks), students)
# Access value using the key
print(results$Pulkit)
Output:
75