删除满足R中某些条件的行

时间:2012-04-12 18:56:22

标签: r

我有一个Y表,包括6列。 (日期,小时,分钟,秒,价格,大小)。 所以现在我应该删除时间大于下午4点的条目。必须省略整行条目。我不太清楚如何处理这个问题。所以基本上我们将查看小时列并进行比较。 例如:

Date       hour min sec price size
jan1st     9    45  45  345   100
jan1st     10   23  33  324   20
jan1st     11   02  34  434   10
jan4th     16   05  09  32    23 
jan5th     23   08  23  12    90

所以在上表中,我想在小时内删除16和23的条目。因而摆脱了整行。我该怎么做?

1 个答案:

答案 0 :(得分:0)

首先,欢迎来到SO和R.我建议您阅读一些入门指南,以便开始使用R. here for example,因为他们会为您回答许多这些问题。

根据下面的示例,您需要使用[这是子集“函数”。另外,正如Tyler在评论中提到的,如果您使用类似dput的内容,那么人们可以快速轻松地使用您的示例数据。

> dput(dat)
structure(list(Date = c("jan1st", "jan1st", "jan1st", "jan4th", 
"jan5th"), hour = c(9L, 10L, 11L, 16L, 23L), min = c(45L, 23L, 
2L, 5L, 8L), sec = c(45L, 33L, 34L, 9L, 23L), price = c(345L, 
324L, 434L, 32L, 12L), size = c(100L, 20L, 10L, 23L, 90L)), .Names = c("Date", 
"hour", "min", "sec", "price", "size"), class = "data.frame", row.names = c(NA, 
-5L))



> dat[dat$hour < 16,]
    Date hour min sec price size
1 jan1st    9  45  45   345  100
2 jan1st   10  23  33   324   20
3 jan1st   11   2  34   434   10
相关问题