2015-07-04 124 views
2

如下如何從data.frame使用quantmod包,我拉的股票數據,提取行索引中的R與quantmod包

library(quantmod) 
getSymbols('F') 
head(F) 

這給輸出

  F.Open F.High F.Low F.Close F.Volume 
2007-01-03 7.56 7.67 7.44 7.51 78671500 
2007-01-04 7.56 7.72 7.43 7.70 63545800 
2007-01-05 7.72 7.75 7.57 7.62 40563800 
2007-01-08 7.63 7.75 7.62 7.73 48941200 
2007-01-09 7.75 7.86 7.73 7.79 56732500 
2007-01-10 7.79 7.79 7.67 7.73 42398600 
# and an unimportant(here) warning regarding download length 

我想爲了能夠在這裏提取明顯的日期列,並將數據作爲data.frame處理,通常我會嘗試查找列名稱並將該列拉出來,但日期不包含在列中!

+0

抱歉沒有看到那一個。這裏用data.frame想要的答案可能會不一樣嗎? –

+0

讓其他人決定他們是否認爲它是重複的。 –

+0

重複通常最終會比原稿獲得更多的命中,因爲問題的表達方式是不同的。我的理解是他們不應該被刪除,除非他們是明顯的副本。 –

回答

2

它不是data.frame,它是一個xts。如果你想操縱它作爲一個data.frame並獲得日期(他們給人的感覺是rownames)嘗試:

df <- data.frame(F) 
    row.names(df) 
+0

完美的工作,我想我的腦中有data.frames,不要多用xts。謝謝 –

5

你可以嘗試

dates <- index(F) 

的quantmod包中提取XTS格式的數據。將xts時間序列轉換爲數據幀可能並不總是可取的。

+1

在這裏也有正確的使用方法。 –

+0

您的解決方案沒有任何意圖,它提供的答案更符合OP標題中的描述。只是在這種格式轉換之後,如果不是quantmod軟件包提供的所有功能,都會失去許多功能。 – RHertel

+0

完全同意。但有些東西確實需要數據框架,而且需要注意兩種可能性。 –