R:在t.test中处理NaN值

时间:2015-05-13 11:51:08

标签: r nan

我有很多载体,我应该对它们进行一次t检验。 这些向量中的每一个都包含相对于两个组的数据,但缺少一些值。简而言之,这种载体之一可能是:

A <- c(1, NaN, 1.2, 1.5, 5.6, 5.1, 4.8, 4.7)

因子在载体中

B <- c("CTRL", "CTRL", "CTRL", "CTRL", "TRTD", "TRTD", "TRTD", "TRTD")

执行t.test(A~B)时,会发出错误...我该如何处理?

1 个答案:

答案 0 :(得分:1)

您收到的错误信息非常丰富:您似乎没有足够的观察来计算t.test。然而,你的问题是如何产生NA而不是打破循环的错误。在这种情况下,您可以使用tryCatchtrytryCatch的简化版):

tryCatch(t.test(x ~ y), error = function(err) return(NA))

在这个函数中你有expr参数是你的函数,error是一个函数,它将输入错误消息并输出你想要的任何东西(例如{{ 1}}只会在屏幕上打印错误消息)并且function(err) print(err)将警告消息作为输入,并以类似的方式工作。