r语言提取列名_R语言学习:提取R对象的子集

本文介绍了R语言中提取对象子集的方法,包括向量、矩阵、列表和数据框的取子集操作。详细讲解了单方括号、双方括号和美元符号的使用,以及如何进行模糊匹配、删除缺失值(NA)。通过实例展示了如何根据特定条件提取数据框的子集。
摘要由CSDN通过智能技术生成

Subsetting R Objects

取子集的三种基本方法
  • [ :“单方括号”返回的对象和原来相同,如向量的子集还是向量;也可用于在对象中选择多个元素

  • [ [:“双方括号”仅可用于提取单一元素,并且用来提取列表或者数据框中的元素,但是,由于列表或者数据框中的元素类别不唯一,因此它返回对象的类型不一定是列表或者数据框

  • $ :“美元符号”是提取有名字的列表或数据框中的一个元素

(一)向量取子集

举例

  1. 单括号+数字索引:

> x c("a", "b", "c", "c", "d", "a")  

> x[2]            ## 提取第二个元素

[1] "b"

> x[1:4]          ## 提取连续多个元素

[1] "a" "b" "c" "c"

> x[c(1, 3, 4)]   ## 提取不连续的多个元素

[1] "a" "c" "c"

2.单括号+逻辑索引(按字母排序):

> x c("a", "b", "c", "c", "d", "a")  

> x[x > "a"]      ## 提取首字母排序大于a的元素

[1] "b" "c" "c" "d"

3.创建逻辑向量

> u x > "a"

> u

[1] FALSE  TRUE  TRUE  TRUE  TRUE FALSE

> x[u]

[1] "b" "c" "c" "d"

(二)矩阵取子集

矩阵取子集可通过行索引和列索引来完成。

例如以下2*3的矩阵

> x matrix(1:6, 2, 3)

> x

    [,1] [,2] [,3]

[1,]    1    3    5

[2,]    2    4    6

> x[1, 2]            

[1] 3

> x[, 1]

[1] 1 2

> x[1, 2, drop = FALSE]   ## 修改drop参数,返回矩阵形式

    [,1]

[1,]    3

> x[, 1, drop = FALSE]

    [,1]

[1,]    1

[2,]    2

(三)列表取子集

列表取子集既可以使用“[”,"[[",也可以使用“$”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值