R语言

R语言列表2021.1.28

2021-01-28  本文已影响0人  R语言_茶味先生

列表

列表顾名思义就是用来存储很多内容的一个集合,在其他编程语言中,列表一般和数组是等同的,但是在R语言中,列表却是R中最复杂的一种数据结构,也是非常重要的一种数据结构。列表就是一些对象的有序集合。列表中可以存储若干向量、矩阵、数据框,字符串甚至其他列表的组合。
——引用自B站基因学苑up主教学视频中的一段文字

一、向量与列表的比较

1、在模式上和向量类似,都是一维数据集合。
2、向量只能存储一种数据类型,列表中的对象可以是R中的任何数据结构,甚至列表本身。

二、列表的创建

先对列表元素进行赋值,再用list()语句进行赋值

a<-1:20
b<-matrix(1:20,4)
c<-mtcars
d<-"this is a test list"                                       ##对列表元素赋值
mlist<-list(a,b,c,d)                                           ##将列表组合后赋值给一个新的列表
mlist<-list(first=a,second=b,third=c,forth=d)                 ##对列表的每一列取字段名称

三、列表的访问

列表访问子集列表有三种方法,索引访问,名字访问和$字符访问,而访问输出对应子集数据类型的数据则需要双中括号访问,即[[ ]]

索引访问

访问列表中单个集合,例如

mlist[1]

访问列表中多个集合,例如

mlist[c(1,4)]
名字访问

字段要加引号,访问列表中单个集合,例如

mlist["first"]

访问列表中多个集合,例如

mlist[c("first","third")]
符号访问

$符号,例如访问字段值为first的集合,很高效,推荐使用!

mlist$first
双中括号访问
mlist[[1]]

四、列表添加子集

用双中括号给列表添加子集

mlist[[5]]<-iris
单中括号与双中括号的用法区别

命名新元素有两种方法:第一种是重新创建+命名:mlist<-list("name1"=a,"name2"=b)的形式。第二种重命名所有数据集

五、删除列表子集

方法有两种:负索引和赋空值

1.负索引删除子集
mlist[[-5]]
2.赋空值删除子集
mlist[[5]]<-NULL
上一篇下一篇

猜你喜欢

热点阅读