【问题标题】:Remove specific rows from a data frame [duplicate]从数据框中删除特定行[重复]
【发布时间】:2012-01-04 20:28:35
【问题描述】:

可能重复:
removing specific rows from a dataframe

假设我有一个由多行组成的数据框,如下所示:

X <- data.frame(Variable1=c(11,14,12,15),Variable2=c(2,3,1,4))

Variable1    Variable2
11           2
14           3
12           1
15           4

现在,假设我想创建一个新的数据框,该数据框与该数据框重复,只是我要删除 Variable1 具有特定数值的所有行。假设我们将这些数字存储在向量 v 中。

也就是说,如果 v 包含数字 11 和 12,那么新的数据框应该如下所示:

Variable1    Variable2
14           3
15           4

我已经在网上搜索了很长时间,现在试图弄清楚如何做这样的事情。主要是,我只需要某种命令说removeRow(dataframe, row) 或类似的东西。

【问题讨论】:

  • 你搜索过这个问题吗?答案肯定涉及使用 %in% 和提取运算符“[”,但我认为它已经得到了回答。例如,使用您的问题标题进行搜索的第一个:stackoverflow.com/questions/7112872/…
  • 这是一个相当普遍的 R 实践。这里有一个提示,不要尝试删除您不想要的行,而是尝试创建一个包含您想要的行的新数据框。
  • 您应该发布一个可重现的示例。 dput是你的朋友!

标签: r


【解决方案1】:
 X <- data.frame(Variable1=c(11,14,12,15),Variable2=c(2,3,1,4))
> X
  Variable1 Variable2
1        11         2
2        14         3
3        12         1
4        15         4
> X[X$Variable1!=11 & X$Variable1!=12, ]
  Variable1 Variable2
2        14         3
4        15         4
> X[ ! X$Variable1 %in% c(11,12), ]
  Variable1 Variable2
2        14         3
4        15         4

你可以随心所欲地对其进行功能化。

【讨论】:

    猜你喜欢
    • 2011-10-30
    • 1970-01-01
    • 2020-05-08
    • 2018-07-25
    • 2019-11-04
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    • 2015-04-16
    相关资源
    最近更新 更多