我想用[{1}}对变量x
进行排序。我跑的时候
length(x)>12000
来自RStudio的,sort(x)
控制台开始显示结果。有没有一种方法可以排序而不显示排序数据?
答案 0 :(得分:3)
我认为这里存在一个更广泛的问题,那就是R REPL。您看到您在R解释器中的Read-Eval-Print循环中。它的作用是:
sort(x)
因此,当您在解释器中创建有效的object
时,无论您是否明确地调用print
,都会打印出来。
> x <- 5
> x
[1] 5
> print(x)
[1] 5
唯一没有打印的是赋值,因为技术上,这是副作用。因此,第一个陈述x <- 5
没有说什么。
这是一个有趣的玩具:
> f1 <- function (x) x
> f2 <- function (x) y <- x
> f1(5)
[1] 5
> f2(5) # Nothing
细微差别在于f1明确return
s x
而f2仅使用x作副作用。但是,如果您执行identical(f1(5), f2(5))
,则会获得TRUE
。
希望这会有所帮助。 :)
答案 1 :(得分:1)
我了解到我可以简单地将已排序的数据存储在一个新变量中;例如y <- sort(x)
。使用invisible(sort(x))
也是另一种选择。