4

我对 R 真的很陌生。请允许我问一个初学者的问题。

例如,当我键入 p.adjust 时,我可以看到以下内容。默认情况下,参数方法似乎是 p.adjust.methods 。我试图跟踪代码,但是当我输入如下内容时:

match.arg(p.adjust.methods)

它说:

match.arg(p.adjust.methods) 中的错误:“arg”的长度必须为 1

为什么?

> p.adjust
function (p, method = p.adjust.methods, n = length(p)) 
{
    method <- match.arg(method)
    ...
}
4

1 回答 1

7

match.arg函数在其一种参数形式中无法在交互模式下工作,因为没有可匹配的内容。第一个参数应该是长度为 1 的字符向量,并针对已知方法_inside_the_function_进行测试:

> ?p.adjust
> p.adjust.methods
[1] "holm"       "hochberg"   "hommel"     "bonferroni" "BH"         "BY"         "fdr"       
[8] "none"     

p.adjust(如果您使用位置匹配,第一个参数必须是 p 值向量。)

于 2013-10-03T01:08:41.580 回答