R语言数据类型numeric

Python011

R语言数据类型numeric,第1张

尽管有很多类型的R对象,经常使用的就只有:矢量、列表、矩阵、数组、因子、数据帧,这些对象中最简单的是向量对象,并且这些原子向量有六种数据类型,也称为六类向量。 其他R对象建立在原子向量之上。

以下直接说遇到的问题:

在做数据帧的列添加直接用的cbind():

之后再继续进行回归分析,结果出现一下问题:

之后经过检查是因为数据类型不对:

应该和原来数据保持数据类型相同才可以,我的解决方法是,先添加的列进行创建一个单独的数据帧data.frame(),将数据类型转换成和原来数据帧相同的数据类型numeric

>add<-data.frame(addc=c('1','5','6','8','7','9','6','8','0','2','5','1','8','9','10','5','6','10','15','4','0','5','8','3','5','7','9','12','3','8','5','0'))

>add<-as.numeric(add$addc)

>str(add)

>input<-mtcars[]

>print(input)

>str(input)

>>add_new<-cbind(input,add)

>str(add_new)

再进行回归分析就不会出现以上问题了

问题解决!

另外补充将file中的数据转换成numeric:

你的文件是file.csv

>data<-read.csv("file.csv",header=T)

比如说第2列是性别 1是男 0是女

那么你可以强制转换,也可以用函数

>sex<-factor(data[,2]) 或者 >sex<-as.factor(data[,2])

如此sex就变成了因子型的

你可以把0,1改成female ,male

>levels(sex)<-c("female","male")

最后带回去

>data[,2]<-sex