打印 R 函数时如何抑制环境线?
How do I suppress the environment line when printing an R function?
当我从一个包中打印一个函数时,如何抑制 environment/namespace 行?我试过将函数重新分配给全局环境。我试过进入 foobar 环境。我已经尝试过噱头和游戏,甚至使用 R 来完成这项工作。看起来应该有一个简单的方法来做到这一点。
> x2
function(x) {
return(x * x)
}
<environment: namespace:foobar>
>
好吧,如果您想更改函数的打印方式,请创建您自己的 print.function
。我认为这应该适合你
print.function <- function(x,...) {
environment(x)<-globalenv();
base::print.function(x,...)
}
例如
x2<-function(x) {
return(x * x)
}
environment(x2)<-asNamespace("stats")
base::print.function(x2)
# function(x) {
# return(x * x)
# }
# <environment: namespace:stats>
x2
# function(x) {
# return(x * x)
# }
当我从一个包中打印一个函数时,如何抑制 environment/namespace 行?我试过将函数重新分配给全局环境。我试过进入 foobar 环境。我已经尝试过噱头和游戏,甚至使用 R 来完成这项工作。看起来应该有一个简单的方法来做到这一点。
> x2
function(x) {
return(x * x)
}
<environment: namespace:foobar>
>
好吧,如果您想更改函数的打印方式,请创建您自己的 print.function
。我认为这应该适合你
print.function <- function(x,...) {
environment(x)<-globalenv();
base::print.function(x,...)
}
例如
x2<-function(x) {
return(x * x)
}
environment(x2)<-asNamespace("stats")
base::print.function(x2)
# function(x) {
# return(x * x)
# }
# <environment: namespace:stats>
x2
# function(x) {
# return(x * x)
# }