584790353
随便编了个函数,突然出现:
> f<-function(x)x^2
> f<-function(x)x^2-3x-9
错误: 意外的符号在"f<-function(d)x^2-3x"里
> f<-function(x)x^2-x-9
> f<-function(x)x^2-3x-9
错误: 意外的符号在"f<-function(d)x^2-3x"里
> f<-function(x)x^2-4x-9
错误: 意外的符号在"f<-function(d)x^2-4x"里
意外的符号?
什么意思?
我每次退出R的时候都没有保存工作空间映像,和这个有关吗?
请赐教!!!!!!!!!!!!!!
kirsten
...what's that? 3x? your hand writing?
f<-function(x)x^2-4*x-9
missing a "*"
584790353
哦 对啊 哎呀 不好意思 丢人了
yihui
我以前总结过三个经典错误:
乘法:3x
条件:if(x=1)
条件:if(1<x<2)
dragonet
什么时候R才能有智能检查功能啊
abel
这是编辑器的工作,现在R核心部分应该还不会兼顾到。
自动补齐、高显亮倒是有不少工具了。
另外,出现问题首先看下错误信息说明,而不是动辄怀疑软件问题,毕竟用R经过了相当多的检验。
yihui
据我所知,貌似还没有哪种语言可以直接写3x作为3*x吧?所以这和R没有关系啊,基本的写代码习惯:按规章制度办事,计算机不是人,它有它的语言和理解方式。
rtist
其实我觉得,益辉总结的三个错误倒是应该改进的方向。改进起来其实不难。
3x: 因为数字一般不作变量名的首字母,所以数字开头的疑似变量名都可以在第一个非数字字符前加*,然后重新parse;ax+b之类的问题也可以用名字空间中的变量名更加智能一点的parse——但问题是容易造成歧义。
if(x=1)和if(1<x<2)两个问题也都可以对出现在if()内的条件判断重新定义来实现。
yihui
嗯,这倒也是,其实习惯了也无所谓:)
icenum123
最好还是自己要养成良好的编程习惯啊~
不能老是想让软件来适应自己~