我有一个普遍的问题和一个具体的例子.一般的问题是:有没有办法捕获函数的结果,所以我可以过滤它们而不创建临时变量?
这是例证.如果我想在不是1.0的相关矩阵中找到最高相关性,我可以:
tmp <- cor(stocks)
max(tmp[tmp < 1.0])
Run Code Online (Sandbox Code Playgroud)
有没有办法在一行代码中执行此操作?
注意:我知道通过在这个特定实例中将对角线设置为0,我可能得到相同的结果,但我想了解更一般的情况.如何对cor(股票)的结果进行子集或过滤?
你可以使用with功能:
with(list(tmp=cor(stocks)),max(tmp[tmp < 3]))
Run Code Online (Sandbox Code Playgroud)
请注意,这并不比您的方法更有效,因为您仍在创建一个临时变量.