2012-04-12 132 views
0

我有一个表Y,由6列组成。 (日期,小时,分钟,秒,价格,尺寸)。 所以现在我应该删除时间大于下午4点的条目。整行条目必须省略。我不太清楚如何继续。所以基本上我们会在小时专栏中进行比较。 例如:删除满足R中某些条件的行

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项。并因此摆脱整个行。我会怎么做?

+2

嘿,我看你是新来的SO。我建议你提供一个可重现的例子(即最小数据集和重现错误的代码)。这也是一个经常被问到的问题,因此您可能需要先搜索档案。 – 2012-04-12 18:58:22

回答

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 
+0

感谢您的回答。我的数据集大约有15,000行。我能够使用这种方法吗? – Probabilityman 2012-04-12 19:29:34

+0

15k行不是以任何方式!这将工作得很好。 – Justin 2012-04-12 19:47:24

相关问题