【发布时间】:2015-02-02 06:22:52
【问题描述】:
我的 csv 文件中有这样的数据
Date AAPL MSFT GOOG
8/19/2014 100.53 45.78787879 522.7956989
8/18/2014 99.16 45.56565657 517.0967742
8/15/2014 97.98 45.24242424 511.7204301
8/14/2014 97.5 44.71717172 508.1362007
8/13/2014 97.24 44.52525253 506.5232975
8/12/2014 95.97 43.95959596 499.9641577
8/11/2014 95.99 43.63636364 498.8888889
8/8/2014 94.74 43.63636364 494.4086022
8/7/2014 94.48 43.66666667 493.5842294
8/6/2014 94.96 43.17171717 493.5483871
我是这样读的
price_data <- read.csv("C:\\Prices.csv")
我想将它转换为时间序列。我在R - Transform Data frame to Time Series 和Convert data frame with date column to timeseries 看到了问题。
但是,就我而言,我有不止一列要转换。列数可以不同。
一种解决方案似乎是将每一列分开并转换为时间序列,然后使用 cbind 合并回来。
最好的方法是什么。
编辑
我想使用此数据计算组件 VaR。我也有符号位置
MSFT 1000
AAPL 1520
GOOG 398
“PerformanceAnalytics”包中的 VaR 接受时间序列。有没有其他方法可以将这些数据传递给函数?
【问题讨论】:
-
通过合并回来,您想获得一个包含 3 列(日期、值和代码)的 data.frame 作为输出?
-
我的意思是我希望它像日期(时间序列)、AAPL、MSFT、GOOG。所以它会像 4 列。更具体地说,我想计算组件 VaR stackoverflow.com/questions/27243094/…
-
您实际上只是想将
Date列转换为时间序列,对吗?因为转换所有列没有意义。 -
在这种情况下,如果您需要 xts 格式,最好使用具有 3 个时间序列的列表。编辑:您没有清楚地描述您想要什么,输出示例会有所帮助。
-
是的并且使用包PerformanceAnalytics计算VaR,我猜这个方法只接受时间序列数据
标签: r csv time-series