[問題] 數據轉換 字元到數字 改y軸 指令

作者: dreler1 (....)   2015-07-11 22:46:22
[軟體熟悉度]: 入門
[問題敘述]:
我有一組數據
data <- read.csv("OLFdata.csv", header = T)
data[data == "Null"] <- NA
data$date <- as.POSIXct(strptime(data$date,format = "%m/%d/%Y %H:%M",tz="GMT"))
整理之後發現從第2 到 第23column的數據都被讀成字元
上網找到了
data$a <- as.numeric(as.character(data$a))
這個可以幫我轉成數字
於是我想一口氣完成轉換
我嘗試了
data[2:23] <- as.numeric(as.character(data[2:23])
Warning message:
NAs introduced by coercion
全部都變成NA 有辦法一次做完嗎?
目前我已經一個一個轉好了
我畫了一個 multiple y vs x的圖
想要改 y軸
用aixs都沒反應 我嘗試用 axis(side = 2, col = 'darkgreen')
類似這樣的指令 就跑不出來 整個 Rstudio停在那邊 我要強制停止
R-3.2.1 Rstudio-0.99.451 windows OS
或者這樣說 我要畫 multiple Y vs X
dailymean = aggregate(data, list(Date=as.Date(data$date)),mean,na.rm=T)
xyplot(dailymean$a ~ dailymean$Date, type="l", ylab = "a")
axis(2,pretty(range(dailymean$a)))
par(new=T)
xyplot(dailymean$b ~ dailymean$Date, type="l", ylab = " ")
axis(4,pretty(range(dailymean$b)))
http://stackoverflow.com/questions/9627389/xy-plot-with-multiple-y-scales
參考這個下去做的
但是 axis 都沒反應
我想說改個顏色看看
axis(2, col="darkgreen")
看 axis這個function 正常嗎
結果 process 轉了十幾分鐘 沒回應 我就手動關掉了 改個軸 會那麼吃資源嗎?
謝謝
作者: celestialgod (天)   2015-07-11 23:46:00
少一個 ,要用data[,2:23]
作者: leo0650 (呂奕)   2015-07-11 23:48:00
data[,2:23] <- sapply(data[,2:23]), function(x){as.numeric(as.character(x))})直接將data.frame用as.character會coerce成atomic vector
作者: celestialgod (天)   2015-07-11 23:58:00
data[,2:23] = as.numeric(as.matrix(as.character(a[,2:23])))
作者: leo0650 (呂奕)   2015-07-11 23:59:00
例如 str(as.character(iris))顯示長度為5的字串向量,非data.frame
作者: celestialgod (天)   2015-07-12 00:01:00
無視我的推文 推錯了(攤手比較建議read.csv加上stringsAsFactors=FALSE全部都是character可以直接as.numeric(as.matrix(轉或是乾脆在read.csv指定colClasses
作者: dreler1 (....)   2015-07-12 00:07:00
謝謝 那對於 axis改軸 可能是哪邊問題嗎?
作者: leo0650 (呂奕)   2015-07-12 00:07:00
apply系列函數等於幫你做"一個一個轉"的動作喔~可參閱http://goo.gl/NdYwyY
作者: celestialgod (天)   2015-07-12 00:11:00
一個個轉 你等於一次次複製data.frame想辦法一次解決吧axis問題 你要全部PO上來才知道 這樣看不出來xyplot是grid based不能用asxistackoverflow上是用plotxyplot要改axis要在panel裡面增加panel.axis 有需要再改給你看不然就考慮latticeExtra的doubleYAxis
作者: dreler1 (....)   2015-07-12 00:52:00
我自己試試看先 謝謝了

Links booklink

Contact Us: admin [ a t ] ucptt.com