如何将Excel中的导入文件转换为R studio中的xts文件

Posted

技术标签:

【中文标题】如何将Excel中的导入文件转换为R studio中的xts文件【英文标题】:How to convert import file from Excel into xts file in R studio 【发布时间】:2019-12-17 13:56:31 【问题描述】:

我在 R 工作室的 performanceAnalytics 包中工作。我的任务是做基于矩阵的最优投资组合。但是,当我尝试使用此代码或类似代码时,R-studio 不断向我抛出错误:chart.Bar(portfelj_sa_Bitcoinom$CROBEX)。 R-studio 告诉我:

数据无法转换为时间序列。如果您尝试从具有一列的数据对象中传递名称,则应使用“data[rows, columns, drop = FALSE]”形式。行名应具有标准日期格式,例如“1985-03-15”。

我想我需要将现有文件转换为 Xts,但我不知道该怎么做,因为我是这个程序的初学者。

我尝试使用来自网站的代码将文件转换为 Xts。但由于我是这个程序的新手,我不知道如何正确使用它们。我将向您展示我的文件结构。

Classes ‘tbl_df’, ‘tbl’ and 'data.frame':   48 obs. of  6 variables:
 $ Date   : POSIXct, format: "2018-07-13" "2018-07-20" "2018-07-27" "2018-08-03" ...
 $ CROBEX : num  1808 1792 1834 1823 1837 ...
 $ BUX    : num  35642 35187 35944 36760 36171 ...
 $ BETI   : num  7933 7898 8041 8089 8154 ...
 $ WIG    : num  2157 2183 2291 2287 2247 ...
 $ BITCOIN: num  6238 7354 8165 7434 6185 ...

Date                CROBEX    BUX  BETI   WIG BITCOIN


  <dttm>               <dbl>  <dbl> <dbl> <dbl>   <dbl>
1 2018-07-13 00:00:00  1808. 35642. 7933. 2157.   6238.
2 2018-07-20 00:00:00  1792. 35187. 7898. 2183.   7354.
3 2018-07-27 00:00:00  1834. 35944. 8041. 2291.   8165.
4 2018-08-03 00:00:00  1823. 36760  8089. 2287.   7434.
5 2018-08-10 00:00:00  1837. 36171. 8154. 2247.   6185.
6 2018-08-17 00:00:00  1818. 36437. 8185. 2218.   6581.
2019-05-03 00:00:00  1844. 41775. 8443. 2319.   5768.
2 2019-05-10 00:00:00  1841. 41068. 8305. 2192.   6379.
3 2019-05-17 00:00:00  1865. 39878. 8224. 2184.   7344.
4 2019-05-24 00:00:00  1877. 40023. 8189. 2188.   7987.
5 2019-05-31 00:00:00  1851. 40904. 8493. 2239.   8574.
6 2019-06-07 00:00:00  1875. 41160. 8576. 2281.   8044.

如何继续使用我的数据?

【问题讨论】:

【参考方案1】:

尝试将您的数据框转换为这样的 xts 对象:

library(xts)
data <- xts(data[,-1], order.by = data[,1])

这告诉 xts 使用第一列作为索引创建一个对象。然后,它应该可以按您的预期工作。

【讨论】:

以上是关于如何将Excel中的导入文件转换为R studio中的xts文件的主要内容,如果未能解决你的问题,请参考以下文章

如何把excel中的空白转换为数字

求解:怎么将r软件内的数据转换为excel数据?

如何将R语言中的表格数据输出为Excel文件

如何将R语言中的表格数据输出为Excel文件

如何将R语言中的表格数据输出为Excel文件

将受密码保护的 xlsx 工作簿导入 R