2017-07-06 79 views
0

請建議如何將索引作爲添加到DF的日期。當下載最新的報價已經添加索引,則需要爲DF通過加做同樣的read.csv添加日期作爲索引

這是例子:

library(quantmod) 
> getSymbols("^GSPC",src="yahoo",from=as.Date("2017-07-01",to=Sys.Date())) 
[1] "GSPC" 
> df<-read.csv("D:\\R\\tmp1\\SiM7.csv",header=F,skip=1,sep=";") 

(因爲它應該是)

> GSPC[1,] 
     GSPC.Open GSPC.High GSPC.Low GSPC.Close GSPC.Volume GSPC.Adjusted 
2017-07-03 2431.39 2439.17 2428.69 2429.01 1962290000  2429.01 
> 

(事實證明)

> df[1,] 
V1 V2  V3  V4 V5 V6 V7 V8  V9 V10 
1 SiM7 5 20170522 100000 57236 57236 56767 56785 108295 0 
> 

通過索引(DF)< -df添加[3]不工作,你西澳日期nt添加已經存在並通過read.csv導入請幫助,謝謝

+0

'index()'包來自哪個包? (來自'index(df)< - df [,3]')。我沒有在[quantmod]中看到它(https://www.rdocumentation.org/packages/quantmod)。 – wibeasley

+0

對不起,索引包:動物園(這是與quantmod pckg自動加載) –

回答

0

index與動物園和xts對象,而不是數據框。有關更多信息,請參閱?index。還請查看class(GSPC)class(df)以查看此差異。

如果您的目標是將您的data.frame df轉換爲與GSPC相同的xts對象,請參閱?xts

首先將V3中的日期值轉換爲基於時間的對象。它看起來好像你的日期是數值。所以df_date_vec <- as.Date(as.character(df$V3), format = "%Y%m%d")將創建一個日期向量。然後你可以通過sim_7 <- xts(df$V10, order.by = df_date_vec)創建一個類似於GSPC的xts對象。現在index(sim_7)將返回日期。

這是假設你想要列V10。如果你想多列試試cbind

+0

請告訴我如何重複這個時間... df [,4] - 時間 我需要日期和時間索引,例如(日期時間時間) –

+0

查看日期和時間格式[https://www.stat.berkeley.edu/~s133/dates.html](https://www.stat.berkeley.edu/~s133/dates.html)。 –