Create, Append and Modify List in R
In R Programming Language, the list is a one dimensional data structure which can hold multiple data type elements. In this article, we are going to create a list and append data into the list and modify the list elements.
Creating a list
List can be created by using list() function.
Syntax:
list(value1,value2,………….,valuen)
where values are the inputs to the list.
Example :
R
# vector with names names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" ) # vector with marks marks= c (78,90,100,100) # address vector address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" ) # pass these vectors as inputs to the list # address vector student= list (names,marks,address) print (student) |
Output:
Appending Data to the List
Appending to a list means adding a value to the last of an already existing list. We are going to append two lists by using append() function
Syntax:
append(list1,list2)
Example:
R
# vector with names names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" ) # vector with marks marks= c (78,90,100,100) # address vector address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" ) # college values college= c ( "vignan" , "vignan" , "vignan" , "vignan" ) # pass these vectors as inputs to the list student1= list (student1_names=names,student1_marks=marks, student1_address=address,student1_college=college) # vector with names names= c ( "ravi" , "devi" , "siree" , "priyank" ) # vector with marks marks= c (78,90,100,100) # address vector address= c ( "hyd" , "hyd" , "hyd" , "hyd" ) # college values college= c ( "vvit" , "vvit" , "vvit" , "vvit" ) # pass these vectors as inputs to the list # address vector student2= list (student2_names=names,student2_marks=marks, student2_address=address,student2_college=college) # append list 1 and list 2 print ( append (student1,student2)) |
Output:
We can also append single column in one dataframe to another using $ operator.
Syntax:
append(dataframe1$columnname,dataframe2$columnname)
Program:
R
# vector with names names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" ) # vector with marks marks= c (78,90,100,100) # address vector address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" ) # college values college= c ( "vignan" , "vignan" , "vignan" , "vignan" ) # pass these vectors as inputs to the list student1= list (student1_names=names,student1_marks=marks, student1_address=address,student1_college=college) # vector with names names= c ( "ravi" , "devi" , "siree" , "priyank" ) # vector with marks marks= c (78,90,100,100) # address vector address= c ( "hyd" , "hyd" , "hyd" , "hyd" ) # college values college= c ( "vvit" , "vvit" , "vvit" , "vvit" ) # pass these vectors as inputs to the list # address vector student2= list (student2_names=names,student2_marks=marks, student2_address=address,student2_college=college) # append list 1 - student marks and list 2 - student marks print ( append (student1$student1_marks,student2$student2_marks)) |
Output:
[1] 78 90 100 100 78 90 100 100
Modifying the list elements
Modifying a list means changing the initial representation of the list that can include operations like changing or updating values and deleting. We can modify the list elements using index operator.
index operator:
[[]]
Syntax:
list_name[[n]]=”new_element_name
where n is the index value
Example:
R
# vector with names names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" ) # vector with marks marks= c (78,90,100,100) # address vector address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" ) # college values college= c ( "vignan" , "vignan" , "vignan" , "vignan" ) # pass these vectors as inputs to the list student1= list (names,marks,address,college) # display 1 st row 2 nd element print ( paste ( "1 st one - 2 nd element is : " ,student1[[1]][2])) # modify pinky to gajji student1[[1]][2]= "gajji" print ( paste ( "Modified 1 st one - 2 nd element is : " ,student1[[1]][2])) |
Output:
[1] "1 st one - 2 nd element is : pinkey" [1] "Modified 1 st one - 2 nd element is : gajji"
We can also modify whole index at a time,
Example:
R
# vector with names names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" ) # vector with marks marks= c (78,90,100,100) # address vector address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" ) # college values college= c ( "vignan" , "vignan" , "vignan" , "vignan" ) # pass these vectors as inputs to the list student1= list (names,marks,address,college) # display 2 nd index print ( paste ( "2 nd index elements are : " ,student1[[2]])) # modify the whole content of 2 nd index student1[[2]]= c (45,56,54,45) print ( paste ( "Modified 2 nd index elements are : " ,student1[[2]])) |
Output:
Modification includes deletion also. We can delete particular element from the list by assigning list index with NULL operator.
Syntax:
list_name[[index_number]]=NULL
Example:
R
# vector with names names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" ) # vector with marks marks= c (78,90,100,100) # address vector address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" ) # college values college= c ( "vignan" , "vignan" , "vignan" , "vignan" ) # pass these vectors as inputs to the list student1= list (names,marks,address,college) # deleting first item IE names vector student1[[1]]= NULL # display list print (student1) |
Output:
Contact Us