2014-02-23 34 views
0

我正在交叉檢查我的代碼,實質上它看起來R並沒有在邏輯條件下給出正確的輸出。有多可能?我有這樣一個數據幀:在邏輯條件下R可能會出錯嗎?

head(hope) 
       times  users signal log diff 
1 2014-01-13 00:00:16 00250902DC7D true ON 31 
2 2014-01-13 00:00:47 00250902DC7D true ON 31 
3 2014-01-13 00:01:18 00250902DC7D true ON 30 
4 2014-01-13 00:01:48 00250902DC7D true ON 31 
5 2014-01-13 00:02:19 00250902DC7D true ON 31 
6 2014-01-13 00:02:50 00250902DC7D true ON 31 

列中有14個不同的用戶。如果我嘗試爲用戶選擇「00250902FA92」只有數據,我寫如下:

> mmm<-hope[users=="00250902FA92",] 

如果我交叉檢查與「頭」和「尾」我不得到的數據爲希望用戶:

> head(mmm) 
        times  users signal log diff 
44319 2014-01-17 12:29:28 00250902FA92 true ON 17 
44324 2014-01-17 12:30:06 00250902FA92 true ON 5 
44329 2014-01-17 12:30:42 00250902FA92 true ON 3 
44334 2014-01-17 12:31:16 00250902FA92 true ON 15 
44339 2014-01-17 12:32:01 00250902FA92 true ON 10 
44344 2014-01-17 12:32:42 00250902FA92 true ON 5 

* OK *

但(尾):

> tail(mmm) 
     times users signal log diff 
152158 2014-01-16 23:50:22 002509030E53 true ON 14 
152161 2014-01-16 23:50:46 002509030E53 true ON 7 
152164 2014-01-17 11:22:11 002509030E53 true ON 13 
152167 2014-01-17 11:22:26 002509030E53 true ON 7 
152170 2014-01-17 11:22:55 002509030E53 true ON 1 
152173 2014-01-17 11:23:03 002509030E53 true ON 9 

* 錯誤 * _ 爲什麼00250903053? _

有人可以幫我嗎?

回答

1

它應該是:

mmm<-hope[hope$users=="00250902FA92",] 

或者

mmm<-subset(hope, users=="00250902FA92") 
+0

非常感謝:),你知道星期六晚上/週日早上它和我很接近從窗口忠誠報的PC :) – antonio

+0

@antonio這就是爲什麼你不附加數據框。 – Gregor