r - 使用base R从另一个基于单独列中的值的条件值的表中删除行
问题描述
我有一张桌子:
ID Phenotype
AA 1
AB 1
AC 0
AD 1
AE 0
AF 1
AG 0
我有一个“1”表型的 ID 列表,我想从其他“1”表型中进行子集化。我想保留所有“0”表型。
说清单上写着:AB,AD
期望的结果是:
ID Phenotype
AA 1
AB 1
AC 0
AD 1
AE 0
AG 0
IE AF 将被删除,因为它是表型“1”但不在列表中,并且所有表型“0”都保持不变。
在现实表和列表中,有数千个条目。所有的 ID 都是唯一的。
我在一个与外部工具气锁的 HPC 上工作,因此首选基础 R 解决方案。我可以将表子集为表型 1 和 0,删除我不想要的表型,然后重新加入表,但我想知道是否有一种单一的方法来做到这一点?
非常感谢
解决方案
基本R
单线将是:
代码:
df[df[, 1] %in% v | df[, 2] == 0, ]
# checks which data.frame entries are matched in the supplied vector
df[, 1] %in% v
# checks which second column entries equal 0
df[, 2] == 0
# then we just utilize | to tell R to accept entries that satisfy either of our
# conditions
数据:
df <- read.table(text = "ID Phenotype
AA 1
AB 1
AC 0
AD 1
AE 0
AF 1
AG 0", header = T)
v <- c("AB", "AD")
推荐阅读
- c# - 如何将对象的唯一副本存储在列表中,在这种情况下是一个半解决的数独单元格的锯齿状数组
- mysql - Mysql全文搜索布尔模式按相关性排序而不是我正在寻找的顺序(短语匹配)
- javascript - Javascript / 生成小数点后的随机数
- r - 如何按组的最大平均比例对 geom_col 排序,然后绘制堆积条形图
- c# - 共享访问签名在带有子文件夹的 Azure 文件中不起作用
- excel - VBA 错误 13:为什么我会变成这个错误,尽管它适用于同一代码的其他变量
- python - Django:如何确定一个对象是否被任何其他对象引用?
- r - 使用 nls 和 nlr 嵌套用户定义函数的非线性回归
- r - 如何扩展 geom_line 以继续?我要更改 predict() 函数吗?
- sql - 如何使用 SQL 请求在 postgres 中克隆没有数据的数据库