這是我的數據集(稱爲CC)問題的數據<0不是從數據集移除(儘管得體正確的代碼?)
Counter Date Hour Counts
1296 02/05/2008 0 2
1296 02/05/2008 100 0
1296 02/05/2008 200 2
1296 02/05/2008 300 0
1296 02/05/2008 400 1
1296 02/05/2008 500 6
1296 02/05/2008 600 6
1296 02/05/2008 700 45
1296 02/05/2008 800 106
1296 02/05/2008 900 43
1296 02/05/2008 1000 33
1296 02/05/2008 1100 -4
1296 02/05/2008 1200 -4
1296 02/05/2008 1300 56
1296 02/05/2008 1400 45
1296 02/05/2008 1500 49
1296 02/05/2008 1600 88
1296 02/05/2008 1700 124
1296 02/05/2008 1800 91
1296 02/05/2008 1900 42
1296 02/05/2008 2000 33
1296 02/05/2008 2100 13
1296 02/05/2008 2200 9
1296 02/05/2008 2300 8
我最近問及如果如何子集我的數據問題數據在一天中的兩個小時之間達到了特定的標準(請參見subset data for a day if data between two hours of the day meets criteria?),這些標準工作正常。
我的跟進問題是這樣的,
小於0需要的任何數被取出的數據集,因爲這是錯誤的。對於在600和2200之間> 0的日子(所以如果在900處有0個計數,這意味着該日子不包括在該子集中,但是如果在600和2200之間有計數但在200爲0,那麼整天仍然計數)我的代碼工作正常,但有幾個小時的看似隨機的日子,我有-4個數據包括在輸出中(在例1100和1200)。 我看不出有什麼理由爲什麼這些減號應該仍然在數據集中,因爲其餘的負號被刪除,我也檢查過我的原始數據,格式沒有差別。任何幫助將非常感謝,因爲我在網上搜索時沒有發現任何其他幫助,我相信我最後一個問題中提供的代碼是正確的。
這裏是我一直在使用的代碼(除了隨機-4之外的所有作品都有幾天的發現)。
#code to make only 600 hrs to 2200 hrs over 0 #
#########################################
TDF <- subset(cc, Hour>=600 & Hour<=2200)
# get dates where there are no hours with zero count
dates2 <- subset(aggregate(counts~Date,TDF,prod),counts>=0)$Date
DF3 <- subset(cc,Date %in% dates2)
#i then make the counts daily (not shown in example)#
###########################################
daily=subset(DF3)
daily$Date <- as.Date(daily$Date, "%d/%m/%Y")
town=aggregate(counts ~ Date, daily, sum)
預先感謝您的幫助, 凱蒂
啊,我明白了!謝謝@DWin,我是一個R新手,只是無法弄清楚爲什麼這不起作用。在我創建排除<0的DF3之前添加一小段代碼是否最好?或者有沒有更好的方法?非常感謝你的幫助! –
您可以輕鬆地將「&Count> 0」添加到子集參數,因此它看起來像:TDF < - subset(cc,Hour> = 600&Hour <= 2200&Count> 0) –