2011-07-05 39 views
4

可能重复:
Convert factor to integer
R - How to convert a factor to an integer\numeric in R without a loss of information转换因子列在数据帧数值类型列

我看了其中一些用实数列是读取文本文件作为数据框架中的因素。如何转换的factoe列到数字列

+1

http://stackoverflow.com/questions/4798343/convert-factor-to-integer – Chase

+2

-1重复。建议关闭。这也是一个常见问题解答,并在帮助页面上明确回答。 –

+4

这不是重复的。这个问题的目标是自动转换数据框中的所有因子列。 “重复”中的解决方案不适用:'as.numeric'不适用于数据帧。 – bluenote10

回答

9

您可以使用

as.numeric(as.character(x)) 
1

以数字的列得到了阅读的一个因素是,要么有一些地方,使列没有号 - 原因只有或者你弄乱了小数字(这是第一个问题的特例)。如果您的小数点不是.,您可以通过参数dec指定一个新的小数点,例如, dec = ","

1

这是FAQ 7.10

但事实上,为什么不通过指定colClasses参数来正确读取它们?如果使用read.table或其一个变体,或者更好的方法是弄清楚文件中的哪些字符是)说服你的数字不是所有的数字和修复源文件(或最好的,两者都有)。