今天刚遇到一个问题就是从一组因子里面提取出一个数值然后转换成数值,竟然会出错(和原来的不一样)。我也是震惊。
一直觉得只要是数字,不管是什么类型的,都可以通过as.numeric()函数转换为对应的numeric类型的数字,例如
x<-“2014”,x为character类型,而as.numeric(x)则为numeric类型的123。但是因子(factor)类型却不一样。
后来发现,要先转换成字符串然后在转换成数值。也就是:as.numeric(as.character(factorname))