赋值

在列表中赋值和给向量赋值一样直观:
l1 <- list(x = 1, y = c(TRUE, FALSE), z = c("a", "b", "c"))
l1$x <- 0
如果给一个不存在的成分赋值,列表会自动地在对应名称或位置下增加一个新成分:
l1$m <- 4
l1
## $x
## [1] 0
##
## $y
## [1] TRUE FALSE
##
## $z
## [1] "a" "b" "c"
##
## $m
## [1] 4
也可以同时给多个列表成分赋值:
l1[c("y", "z")] <- list(y = "new value for y", z = c(1, 2))
l1
## $x
## [1] 0
##
## $y
## [1] "new value for y"
##
## $z
## [1] 1 2
##
## $m
## [1] 4
如果想要移除列表中的某些成分,只需赋值为 NULL:
l1$x <- NULL
l1
## $y
## [1] "new value for y"
##
## $z
## [1] 1 2
##
## $m
## [1] 4
还可以同时移除列表中的多个成分:
l1[c("z", "m")] <- NULL
l1
## $y
## [1] "new value for y"

posted @ 2019-01-22 10:24  NAVYSUMMER  阅读(214)  评论(0编辑  收藏  举报
交流群 编程书籍