2016-11-26 48 views
-1

我有以下代碼段,在一組數據具有大致900000行讀取。日期列作爲一個因素進來,我想提取小時,以便我可以聚合它,並做一個每小時行數的barplot。- [R水平錯在較大的數據集

我現在因爲當我檢查「d」數據幀是一小部分,它具有正確的水平「一小時」(即0,1,2,3,4等),但很困惑'df'數據幀讀取「因子w/1等級'0'」。由於這是相同的確切代碼,有人可以向我解釋這裏有什麼問題嗎?

條形圖顯示了爲「d」數據幀,但「DF」據幀完美的罰款只是返回一個欄(作爲基於上述問題,期望)。

謝謝!

df <- read.csv('train.csv') 
d <- df[1:1000,] 
d <- droplevels(d) 
df <- droplevels(df) 
d$Hour <- as.factor(hour(as.POSIXct(as.character(d$Dates)))) 
df$Hour <- as.factor(hour(as.POSIXct(as.character(df$Dates)))) 
+0

這很可能通過'read.csv( 'train.csv',stringsAsFactors = FALSE)'來解決。 – vincentmajor

+0

不幸的是,沒有奏效。相同的結果:( –

回答

0

不知道爲什麼,這是downvoted,但各地相當多的挖掘之後,有包含的問題與日期進來,雖然格式看起來完全一樣,運行as.POSIXlt /作爲一個特定的行.POSIXct總是返回一個日期時間,下降的時間導致關卡被拋棄。我不得不具體定義一個時區爭論,最終解決問題。