为什么data.matrix没有正确转换data.frame?

时间:2016-03-24 17:39:47

标签: r matrix dataframe double

我是R的新手,我不明白为什么我无法通过data.matrix从data.frame获取数字矩阵。我创建了一个data.frame cbinding一些列表。当我需要将它转换为矩阵来做一些微积分时,它不能因为变量不是数字...

medias_1,simetrias_1,medias_5和simetrias_5是double的列表。

> datos_1 <- data.frame(cbind(Medias = medias_1, Simetrias = simetrias_1, Etiqueta = 1))
> datos_5 <- data.frame(cbind(Medias = medias_5, Simetrias = simetrias_5, Etiqueta = -1))

> datos <- rbind(datos_1, datos_5)

> muestras <- cbind(datos$Medias, datos$Simetrias)

> h <- head(muestras,3)
> h
     [,1]      [,2]   
[1,] 0.876957  -9.356 
[2,] 0.8861406 -12.598
[3,] 0.8846289 -8.224 
> typeof(h)
[1] "list"
> typeof(data.matrix(h))
[1] "list"
> typeof(as.matrix(h))
[1] "list"

有什么问题?我无法理解。

解决方案:删除data.frame()中的cbind!我要将列表转换为数字,但它没有任何问题。

0 个答案:

没有答案