R:[Indicspecies包] multipatt函数:从summary.multipatt中提取值

时间:2019-03-20 22:22:44

标签: r

我正在使用'indicspecies'程序包-multipatt函数,并且无法提取该程序包的摘要值。不幸的是,我无法打印所有摘要,并为我的模型留下了公正的信息。原因是摘要中需要打印大量数据(300.000个不同物种,3个组,6个可比较的组合)。

保存摘要(包括预编码)会发生以下情况:

x <- multipatt(data, ...) 

sumx <-summary(x)

sumx 
  

NULL

str(sumx) 
  

NULL

因此,摘要不能完全像一般摘要一样工作。似乎该函数基于'labdsv'包中的旧indval函数(在文档中已提到)。我找到了一个讨论了类似问题的存档线程:http://r.789695.n4.nabble.com/extract-values-from-summary-of-function-indval-of-the-package-labdsv-td4637466.html

,但似乎无法解决(并且不是完全相同的功能,而是基本功能indval)。

我想知道是否有人对indicspecies软件包有经验,并且知道一种从摘要中提取信息的方法。

可以从模型中的其他已保存数据中提取重要性和其他信息,但是最好从数据中快速获得一个完整的概述。

ps。我尝试过

options(max.print=1000000)

但是这并不能解决我的问题。

2 个答案:

答案 0 :(得分:0)

我对此程序包没有任何经验,并且由于您没有提供数据,因此很难复制。但是由于summary返回的是NULL,因此您确定x的计算正确吗?检查object.sizeclassx的其他内容,看它是否确实有任何内容。 同样,您可以使用summary(x)来访问其插槽(而不是同时访问@的所有内容)(类似于数据帧中的$)。

如果您需要进一步的帮助,最好至少提供一小部分子集或其他示例数据,以便社区可以使用。

答案 1 :(得分:0)

我过去常常捕获summary对象的multipatt输出,但是不再使用,因为报告的p值并未针对多次测试进行校正。要回答OP的问题,您可以使用capture.output

捕获摘要输出

例如 dat.multipatt.summary<-capture.output(summary(dat.multipatt, indvalcomp=TRUE))

同样,我不建议这样做。校正多次测试的p值非常重要,因此summary输出实际上没有帮助。要清楚,?multipatt指出:

“签署具有最佳匹配模式,关联值和关联的统计显着性程度(即,来自置换检验的p值)的结果的数据表。请注意,p值并未针对多个测试。”

我刚刚在https://stats.stackexchange.com/questions/370724/indiscpecies-multipatt-and-overcoming-multi-comparrisons/401277#401277

上发布了有关如何更正p值的答案。