在R中将矩阵转换为数据帧的问题(R认为所有数值类型都是因素)

Dav*_*ave 1 r matrix type-conversion dataframe data-structures

我通过COM接口将数据从C#传递给R.当数据到达R时,它被存放在"矩阵"中.我使用的一些功能要求数据在'DataFrame'中.我使用转换数据结构

newDataFrame <- as.data.frame(oldMatrix)
Run Code Online (Sandbox Code Playgroud)

数据表到达R就好了,一旦我转换到DataFrame,它就假设我的所有数值数据都是因素!

所以它转变为:{34,46,90,54,69,54}成{1,2,3,4,5,4}

我的数据表中有因素,所以我不能强迫整个数据.有没有办法解决?注意:我无法将数据作为CSV导出到文件系统中,并手动将其读入R.

另外,我正在使用的函数需要一个DataFrame是'Hmisc'包使用

hist.data.frame(dataFrame)
Run Code Online (Sandbox Code Playgroud)

这会为DataFram中的每一列数据生成频率直方图,并以网格模式排列所有数据(非常漂亮)!

谢谢!戴夫

had*_*ley 5

我认为您错误地诊断了问题 - 矩阵中的所有列必须是相同的类型,因此这可能是出现问题的地方,而不是转换为数据框.