在 R 中使用 as.xts() 缩放到 xts 时的引号

Quotation marks when zoo to xts using as.xts() in R

将下面的数据(class "zoo")转换成xts时,我用的是returns.xts<-as.xts(returns)。效果是在新数据周围添加引号。然后在功能上变得不可用。

这是为什么?

class("zoo")

           UK.EQUITY    EUR.EQUITY   NA.EQUITY    ASIA.EQUITY  JPN.EQUITY   EM.EQUITY    WORLD.EQUITY.EX.UK
2006-04-30 0.010552982  -0.003337229 -0.033739353 0.025092643  -0.020920633 0.020016007  -0.021165353      
2006-05-31 -0.048962517 -0.071924029 -0.059684763 -0.102475485 -0.098121902 -0.141877111 -0.067793295    

class ("zoo" "xts")

           UK.EQUITY      EUR.EQUITY     NA.EQUITY      ASIA.EQUITY    JPN.EQUITY     EM.EQUITY     
2006-04-30 "0.010552982"  "-0.003337229" "-0.033739353" "0.025092643"  "-0.020920633" "0.020016007" 
2006-05-31 "-0.048962517" "-0.071924029" "-0.059684763" "-0.102475485" "-0.098121902" "-0.141877111"

xts 不是 "adding quotation marks"。 xts 打印带有引号的字符数据,但 zoo 没有。 str(returns)str(as.xts(returns)) 都应该表明对象的核心数据是字符。这是因为“#N/A”无法转换为数字。

你没有说你是如何从 Excel 读取的(尽管你添加的标签表明你是),但通常有一些方法可以指定 NA 值的表示方式。例如,read.csv 有一个 na.strings 参数,您可以将其设置为 "#N/A".