前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >3-4 列表的子集

3-4 列表的子集

作者头像
hankleo
发布2020-09-16 15:22:23
5820
发布2020-09-16 15:22:23
举报
文章被收录于专栏:Hank’s Blog
代码语言:javascript
复制
#列表的子集 Subsetting List

#[[]] / $ / [[]][] / [[]][[]]
#嵌套列表 /不完全匹配(partial matching)


> x <- list(id=1:4,height=170,gender="male")
> x[1] #找第1列的元素
$`id`
[1] 1 2 3 4

> x["id"] #两个函数作用相同
$`id`
[1] 1 2 3 4

> x[[1]]
[1] 1 2 3 4

> x[["id"]]
[1] 1 2 3 4

> x$id
[1] 1 2 3 4

> x[c(1,3)] #找出第1列和第3列的元素
$`id`
[1] 1 2 3 4

$gender
[1] "male"


> y <- "id"
> x[["id"]]
[1] 1 2 3 4

> x[[y]]
[1] 1 2 3 4

> x$id
[1] 1 2 3 4

> x$y #$只能用于引号名字而不能用于名字里包含的变量
NULL

> x <- list(a=list(1,2,3,4),b=c("Monday","Tuesday"))
> x
$`a`
$`a`[[1]]
[1] 1

$`a`[[2]]
[1] 2

$`a`[[3]]
[1] 3

$`a`[[4]]
[1] 4

$b
[1] "Monday"  "Tuesday"



> x[[1]]
[[1]]
[1] 1

[[2]]
[1] 2

[[3]]
[1] 3

[[4]]
[1] 4


> x[[1]][[2]]
[1] 2

> x[[1]][2]
[[1]]
[1] 2


> x[[c(1,3)]]
[1] 3

> x[[c(2,2)]]
[1] "Tuesday"


> l <- list(asdfghj=1:10)
> l$asdfghj
 [1]  1  2  3  4  5  6  7  8  9 10

> l$a #不完全匹配
 [1]  1  2  3  4  5  6  7  8  9 10

> l[["a"]]
NULL

> l[["a",exact=FALSE]] #嵌套做不完全匹配时后面加"exact=FALSE"
 [1]  1  2  3  4  5  6  7  8  9 10

> X <- list(asdfghj=1:10,b=1:2,aaa=3:5)
> x$a
[[1]]
[1] 1

[[2]]
[1] 2

[[3]]
[1] 3

[[4]]
[1] 4



> x[["a",exact=FALSE]]
[[1]]
[1] 1

[[2]]
[1] 2

[[3]]
[1] 3

[[4]]
[1] 4


> x$as
NULL
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-11-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档