我需要创建一个矩阵,其元素可以是任何类型的R对象。
string 1 string 2 ... string n
object[1, 1] object[1, 2] object[1, n]
... .... ...
object[n, 1] object[n, 2] object[1, n]
(字符串1,...,字符串n应该是列的标签)
这样的矩阵存在吗?提前致谢
我试过了:
vect1<-c(returns1, returns2, returns3, returns4)
vect2<-c(param1, param2, param3, param4)
vect3<-c(param5, param6, param7, param8)
frame<-data.frame(vect1, vect2, vect3)
returns1,...,returns4是&#34; xts&#34; &#34;动物园&#34;对象
param1,...,param4是fPortfolio包中的投资组合对象:
class(param1)
[1] "fPFOLIOSPEC"
attr(,"package")
[1] "fPortfolio"
param5,...,param8的课程是:&#34;字符&#34;
尽管如此:
frame<-data.frame(vect1, vect2, vect3)
给我一个错误:R无法转换&#34; fPFOLIOSPEC&#34;,package =&#34; fPortfolio&#34; class into data.frame ...
所以data.frame不能包含fPFOLIOSPEC,fPortfolio元素......
您现在将如何将这种对象包含在类似矩阵的结构中吗?
答案 0 :(得分:0)
在矩阵中,ALL列必须具有相同的类型(数字,字符,因子等)。
如果每列都有不同的类型(数字,字符,因子等),您可以构建数据框,但是对于每列,您只能保存相同类型的数据(否则,它们将转换为相同的类型; R的一般经验法则是“更大的类型获胜”。