使用R,其他语言中的方法等价物

时间:2016-08-11 19:12:56

标签: r methods

在Java和Eiffel等语言中,函数(返回值)和方法,变换语句组之间存在分歧。所以一种方法是这样的: public main blah NAMEOFMETHOD(x){    声明/ COMMAND    声明/ COMMAND    声明/ COMMAND }

R具有语言的基本功能,但没有明显的方法来制作方法(我认为)。我只是将一组命令放在一个类中吗? (我几年前用Eiffel和Java编程,但现在使用R进行统计,并且正在使用一些编程来扩展我的工作 - 或者编码你现在称它为什么?!)

老家伙重新学习。请温柔。

1 个答案:

答案 0 :(得分:1)

R是一种函数式编程语言。重要的是要理解技术上没有真正的功能(可能产生情节的副作用)和方法之间的区别。

唯一的区别是没有“返回值”。

带签名的Java方法

void doSomething()

(错过了return)可以在R中实现

doSomething <- function(){
  # Do something here
  return(invisible(NULL))
}

其中NULL是返回值(“无”),invisible指示R不自动将此结果打印到控制台。

return(invisible(NULL))等同于较短的语句return(invisible()),如果它是函数中的最后一行代码,则应该等同于invisible(),因为R自动返回函数体中最后一次计算的结果。