【问题标题】:filter R data frame with one column - keep data frame format [duplicate]用一列过滤R数据框-保持数据框格式[重复]
【发布时间】:2015-05-22 08:00:32
【问题描述】:

我正在寻找一种简单的方法来显示单列数据框的子集 假设,我有一个数据框:

> df <- data.frame(a = 1:100)

现在,我只需要前 10 行。如果我按索引对其进行子集化,我将得到一个结果向量而不是数据框:

> df[1:10,]
 [1]  1  2  3  4  5  6  7  8  9 10

我尝试使用“子集”但不使用“子集”参数会导致错误(仅适用于单列数据帧?):

subset(df[1:10,])
Error in subset.default(df[1:10, ]) : 
  argument "subset" is missing, with no default

应该有一个非常简单的解决方案来实现按行索引过滤的子集(仍然是数据框),不是吗? 我正在寻找具有基本 R 命令的解决方案(它不应依赖于任何特殊库)

【问题讨论】:

  • 非常感谢您对其他问题的提示!由于某种原因,我自己找不到它。

标签: r dataframe


【解决方案1】:

您可以使用drop=FALSE,它可以防止删除数组的维度。

df[1:10, , drop=FALSE]
    a
1   1
2   2
3   3
4   4
5   5
...

对于subset,您需要添加一个条件。

【讨论】:

    猜你喜欢
    • 2020-11-16
    • 1970-01-01
    • 2019-08-11
    • 2018-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-15
    • 2018-09-15
    相关资源
    最近更新 更多