[問題] error in xts

作者: goodparent1 (豆芽先生)   2013-11-07 18:44:24
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
新手(沒寫過程式,R 是我的第一次)
[問題敘述]:
x<-read.table("s.txt",header=T,row.names=c("time"))
head(x)
adjprc.10000 adjprc.10001
2000-01-31 -4.37500 -2.04167
2000-02-29 -3.25000 -2.08333
2000-03-31 -4.43750 -2.10417
2000-04-30 -4.00000 -2.12500
2000-05-31 -3.10938 -2.10417
2000-06-30 -3.09375 -2.04167
這是我的資料形式,在跑程式時遇到一些問題,大概R是無法判斷我的時間格式,
不知道怎麼轉換成R讀得懂的格式,上網找了幾天資訊還是解決不了。
我是R新手,還請大家教我一下,謝謝。
structure(list(adjprc.10000 = c(-4.375, -3.25, -4.4375, -4, -3.10938,
-3.09375, -2.84375, -1.09375, -1.03125, -0.78125, -0.82813, -0.51563,
-0.40625, -0.40625, -0.25, -0.23438, -0.21875, 0, NA, NA, NA,
NA, NA, NA), adjprc.10001 = c(-2.04167, -2.08333, -2.10417, -2.125,
-2.10417, -2.04167, -2.02083, -2.16667, 2.125, 2.20833, 2.33333,
2.33333, 2.25, 2.08333, 2.125, -2.04167, -1.89583, 1.95833, 2,
2.16667, 2.08333, 2.125, 2.0625, 1.95833)), .Names = c("adjprc.10000",
"adjprc.10001"), class = "data.frame", row.names = c("2000-01-31",
"2000-02-29", "2000-03-31", "2000-04-30", "2000-05-31", "2000-06-30",
"2000-07-31", "2000-08-31", "2000-09-30", "2000-10-31", "2000-11-30",
"2000-12-31", "2001-01-31", "2001-02-28", "2001-03-31", "2001-04-30",
"2001-05-31", "2001-06-30", "2001-07-31", "2001-08-31", "2001-09-30",
"2001-10-31", "2001-11-30", "2001-12-31"))
作者: celestialgod (天)   2012-01-07 19:30:00
你的時間列式ROW NAMES吧...
作者: Wush978 (拒看低質媒體)   2012-01-07 21:58:00
try `strptime(row.names(x))`可以po一下`dump(x, file="x.R")`的結果嗎?sorry, 應該是dump("x", file="x.R")
作者: celestialgod (天)   2012-01-08 15:13:00
x<-read.table("s.txt",header=T);time = strptime(row.names(x), "%Y-%m-%d")原po,你INPUT的變數是錯的...我的可以你的資料要不要PO一小段上來看看
作者: Wush978 (拒看低質媒體)   2012-01-08 23:30:00
"%Y", 不是"%y". 我用strptime(row.names(x),"%Y-%m-%d")
作者: celestialgod (天)   2012-01-08 23:54:00
%Y有成功,%y失敗
作者: Wush978 (拒看低質媒體)   2012-01-09 00:42:00
Hmm... 之後什麼code?
作者: celestialgod (天)   2012-01-09 01:58:00
原PO把你的資料取前三行跟rowname, colname列出來可能前十列就夠了這樣才能知道為什麼套到你的資料無法使用你的資料第一行才是時間,不是rowname,因此,應該是用time = strptime(x[,1], "%Y-%m-%d")抱歉,我誤會了,可是我用rowname也是有成功的你的CODE恩..太多,實在沒時間幫你看...
作者: Wush978 (拒看低質媒體)   2012-01-10 23:32:00
你可以參考 ?xts 中的範例裡面有把sample_matrix轉換成xts的過程發問平台可以參考置底文章,裡面有列一些我今天弄好Rstudio後看了一下,問題大概在monthly.returns你可能ROC函數要研究一下你的問題其實滿複雜的,你的問法也要讓別人花很多時間找真正的問題,所以除非運氣好遇到剛好有相關經驗的網友,否則找到你可以接受答案可能機會不大...請參考 http://stackoverflow.com/questions/5963269btw, 最後一行改成xts.ret = as.xts(monthly.returns)可跑但是我完全不知道跑出來的答案是不是對的,所以請自己小心
作者: celestialgod (天)   2012-01-11 12:15:00
版主用心!

Links booklink

Contact Us: admin [ a t ] ucptt.com