嗨,我不太了解多个命令时Rserve的返回类型。例如
a<-rnorm(10);a[4];rnorm(3)
似乎Rserve只返回最后评估的语句,即。 RNORM(3)。是否可以使用Rserve获得所有三个输出值?
另外,我有兴趣知道R中究竟如何获得最后一次计算表达式的返回值? R中是否有一个特殊字符可以像perl一样使用它?
答案 0 :(得分:3)
这是正常的R行为,与您在函数中获得的行为相当。例如:
spam = function(x, y) {
z = x + y
}
这里R返回z
,因为这是最后一次执行的操作。要获取所有对象,您可以使用列表:
spam = function(x, y) {
z = x + y
list(x,y,z)
}
这适用于您的情况:
a<-rnorm(10);list(a,a[4],rnorm(3))
此外,我不知道如何提取最后执行的表达式,但我不建议使用它。这种语法只会使程序的流程更难阅读,并且不会为您节省任何时间。