列表是R语言数据结构中最复杂的一种。一般来说,列表是一些对象(或成分)的有序集合。列表允许整合若干(可能无关的)对象到单个对象名下。例如,某个列表中可能包含若干向量、矩阵或数据框,甚至是包含其他列表的组合。
列表具有以下特点。
列表可以包含多个不同数据元素的数据对象。
可以包含向量、矩阵、数据框,甚至是列表。
列表的各个元素被称为列表项,列表项的数据类型可以不同,长度也可以不同。
在R语言中创建列表主要使用list()函数,语法格式如下:
list(object1, object2, …)
【例4.20】 创建简单列表 (实例位置:资源包\Code\04\20)
下面使用list()函数创建一个简单的列表。运行RStudio,编写如下代码。
1 id <- 100 2 name <- "甲" 3 math <- c(120,110,89) 4 mylist <- list(id,name,math) 5 print(mylist)
代码解析
第4行代码:mylist列表由3个成分组成。第一个是id,数值型;第二个是name,字符型;第三个是math,数值型向量。
运行程序,结果如图4.59所示。
图4.59 创建简单列表
使用列表索引可以对列表中的元素进行访问、编辑或删除。访问列表元素需要使用双重方括号“[[]]”来指明成分或使用成分的名称及位置进行访问。
【例4.21】 列表的索引 (实例位置:资源包\Code\04\21)
通过列表的索引访问列表中的元素。运行RStudio,编写如下代码。
运行程序,结果如图4.60所示。
图4.60 列表的索引