自从Excel上次更新以来,R不会将我的文件识别为数字文件;甚至我过去使用的那些。 我相信问题的根源是我的Excel是法语,并且已将默认小数点从“。”更改为。改为“,”(但这在过去5年中从未造成问题)。
为提取问题的根源,我尝试仅使用一列数据(同时带有。和,),但是R总是给我这个错误:
“错误:(列表)对象无法强制输入'double'”
以下是数据示例(保存为data.csv文件)
23.15
23.35
23.46
20.88
20.77
22.05
21.5
22.65
21.93
22.65
22.47
22.75
22.05
21.95
22.3
19.48
19.44
20.55
20.5
21.65
20.83
21.85
21.77
21.95
23.35
23.55
23.86
21.38
21.29
22.35
22.6
我都使用过:
read.csv AND read.csv2 (read.csv2 is the way to go)
一旦导入到R中,它就是这样的:
但是当我问
is.numeric(data)
我知道
> [1] FALSE
如果我尝试胁迫:
as.numeric
我知道
> Error: (list) object cannot be coerced to type 'double'
我在这里真的很茫然;这似乎是一个糟糕但简单的兼容性问题。感谢您的帮助。
仅供参考,我已经完成了以下疑难解答:
答案 0 :(得分:0)
我解决了这个问题。原来我是在多个问题之间交替进行:
在我的summarise()
函数(带有dplyr和tidyr软件包)中,我错误地在要获取均值的列名周围加上了“”。例如summarise(mean=mean("temp"))
(正确的方法=> summarise(mean=mean(temp))
我没有正确询问:as.numeric(data[4])
函数。正如@MrFlick所指出的,数据框不是数字,而是询问:as.numeric(data[[4]])
挑出了列的数据。 as.numeric(data[,4])
也可以。
最后,问题不是最新的Excel更新,而是我的新操作系统(High Sierra)与我的Excel版本(2011)不兼容。我必须更新到2016版本,才能将文件还原回其初始的“”。格式并从根本上解决R的阅读问题。
干杯!