有没有办法过滤R中函数调用的结果?

Ste*_*owe 2 r

我有一个普遍的问题和一个具体的例子.一般的问题是:有没有办法捕获函数的结果,所以我可以过滤它们而不创建临时变量?

这是例证.如果我想在不是1.0的相关矩阵中找到最高相关性,我可以:

tmp <- cor(stocks)
max(tmp[tmp < 1.0])
Run Code Online (Sandbox Code Playgroud)

有没有办法在一行代码中执行此操作?

注意:我知道通过在这个特定实例中将对角线设置为0,我可能得到相同的结果,但我想了解更一般的情况.如何对cor(股票)的结果进行子集或过滤?

dig*_*All 5

你可以使用with功能:

with(list(tmp=cor(stocks)),max(tmp[tmp < 3]))
Run Code Online (Sandbox Code Playgroud)

请注意,这并不比您的方法更有效,因为您仍在创建一个临时变量.