subset
位于 base
包(package)。 说明
返回满足条件的向量、矩阵或 DataFrame 的子集。
用法
subset(x, ...)
## Default S3 method:
subset(x, subset, ...)
## S3 method for class 'matrix'
subset(x, subset, select, drop = FALSE, ...)
## S3 method for class 'data.frame'
subset(x, subset, select, drop = FALSE, ...)
参数
x |
要子集化的对象。 |
subset |
指示要保留的元素或行的逻辑表达式:缺失值被视为 false。 |
select |
表达式,指示从 DataFrame 中选择的列。 |
drop |
传递给 |
... |
要传递给其他方法或从其他方法传递的进一步参数。 |
细节
这是一个通用函数,为矩阵、数据帧和向量(包括列表)提供了方法。包和用户可以添加更多方法。
对于普通向量,结果只是 x[subset & !is.na(subset)]
。
对于数据帧,subset
参数作用于行。请注意,subset
将在 DataFrame 中进行计算,因此列可以(按名称)引用为表达式中的变量(请参阅示例)。
select
参数仅适用于数据帧和矩阵的方法。它的工作原理是首先将选择表达式中的列名称替换为 DataFrame 中相应的列号,然后使用生成的整数向量对列进行索引。这允许使用标准索引约定,以便可以轻松指定列范围,或者可以删除单个列(请参阅示例)。
drop
参数传递给矩阵和数据帧的索引方法:请注意,矩阵的默认值与索引的默认值不同。
子集化后因子可能有空水平;未使用的级别不会自动删除。有关从数据帧中删除所有未使用级别的方法,请参阅droplevels
。
值
类似于 x
的对象仅包含选定的元素(对于向量)、行和列(对于矩阵或 DataFrame )等。
警告
这是一个旨在交互使用的便利函数。对于编程,最好使用标准子集函数,例如 [
,特别是参数 subset
的非标准评估可能会产生意想不到的后果。
例子
subset(airquality, Temp > 80, select = c(Ozone, Temp))
subset(airquality, Day == 1, select = -Temp)
subset(airquality, select = Ozone:Wind)
with(airquality, subset(Ozone, Temp > 80))
## sometimes requiring a logical 'subset' argument is a nuisance
nm <- rownames(state.x77)
start_with_M <- nm %in% grep("^M", nm, value = TRUE)
subset(state.x77, start_with_M, Illiteracy:Murder)
# but in recent versions of R this can simply be
subset(state.x77, grepl("^M", nm), Illiteracy:Murder)
作者
Peter Dalgaard and Brian Ripley
也可以看看
相关用法
- R substitute 替换和引用表达式
- R substr 字符向量的子字符串
- R summary 对象摘要
- R sum 向量元素之和
- R strsplit 分割字符向量的元素
- R seq.Date 生成规则的日期序列
- R search 给出 R 对象的搜索路径
- R solve 求解方程组
- R scan 读取数据值
- R sprintf 使用 C 风格字符串格式化命令
- R stop 停止函数执行
- R sign 标志函数
- R svd 矩阵的奇异值分解
- R strtoi 将字符串转换为整数
- R source 从文件、连接或表达式中读取 R 代码
- R sQuote 引用文字
- R switch 选择替代方案列表之一
- R strrep 重复字符向量的元素
- R split 分组并重新集合
- R slice.index 数组中的切片索引
- R sort 对向量进行排序或排序
- R standardGeneric 形式化方法系统 – 调度 S4 方法
- R sequence 创建序列向量
- R startsWith 字符串是否以另一个字符串开头或结尾?
- R system.file 查找 R 系统文件的名称
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Subsetting Vectors, Matrices and Data Frames。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。