Create, Append and Modify List in R
Last Updated :
30 Jun, 2021
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
names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" )
marks= c (78,90,100,100)
address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" )
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
names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" )
marks= c (78,90,100,100)
address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" )
college= c ( "vignan" , "vignan" , "vignan" , "vignan" )
student1= list (student1_names=names,student1_marks=marks,
student1_address=address,student1_college=college)
names= c ( "ravi" , "devi" , "siree" , "priyank" )
marks= c (78,90,100,100)
address= c ( "hyd" , "hyd" , "hyd" , "hyd" )
college= c ( "vvit" , "vvit" , "vvit" , "vvit" )
student2= list (student2_names=names,student2_marks=marks,
student2_address=address,student2_college=college)
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
names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" )
marks= c (78,90,100,100)
address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" )
college= c ( "vignan" , "vignan" , "vignan" , "vignan" )
student1= list (student1_names=names,student1_marks=marks,
student1_address=address,student1_college=college)
names= c ( "ravi" , "devi" , "siree" , "priyank" )
marks= c (78,90,100,100)
address= c ( "hyd" , "hyd" , "hyd" , "hyd" )
college= c ( "vvit" , "vvit" , "vvit" , "vvit" )
student2= list (student2_names=names,student2_marks=marks,
student2_address=address,student2_college=college)
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
names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" )
marks= c (78,90,100,100)
address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" )
college= c ( "vignan" , "vignan" , "vignan" , "vignan" )
student1= list (names,marks,address,college)
print ( paste ( "1 st one - 2 nd element is : " ,student1[[1]][2]))
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
names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" )
marks= c (78,90,100,100)
address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" )
college= c ( "vignan" , "vignan" , "vignan" , "vignan" )
student1= list (names,marks,address,college)
print ( paste ( "2 nd index elements are : " ,student1[[2]]))
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
names= c ( "bobby" , "pinkey" , "rohith" , "gnanu" )
marks= c (78,90,100,100)
address= c ( "kakumanu" , "hyd" , "hyd" , "hyd" )
college= c ( "vignan" , "vignan" , "vignan" , "vignan" )
student1= list (names,marks,address,college)
student1[[1]]= NULL
print (student1)
|
Output:
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...