2012-01-05 177 views
2

我需要将xts矩阵转换为数字矩阵或带有数字列的data.frame,无论如何工作。我已经使用data.matrix()尝试,但结果仍然是字符格式:R:如何将xts对象转换为数字矩阵?

class(myxts) 
[1] "xts" "zoo" 
class(myxts[, "MyNumericColumn"] 
[1] "xts" "zoo" 

myxts.num = data.matrix(myxts) 
class(myxts.num[, "MyNumericColumn"] 
[1] "character" 

回答

4

这是卓有成效的,虽然我不知道的性能损失是什么:

mynumeric.matrix = data.matrix(as.data.frame(myxts)) 

的调用as.data.frame将所有字符串转换为数字值,然后data.matrix()返回将所有剩余字符串更改为NAs的矩阵。

0

我不知道如果这是你在问什么,但我没有

require(YieldCurve) 
data(FedYieldCurve) 
august <- FedYieldCuve['2011-08'] 
unclass(august)[1,] 

unclass在于做什么,我觉得你想要做的功能(删除xts特异性attr的并只使用数字)。其余的是一些样本数据。