R:处理 t.test 中的 NaN 值
R: Handling NaN values in t.test
我有很多向量,我应该对每个向量执行一个 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)
时出现错误...我该如何处理?
您收到的错误消息非常有用:您似乎没有足够的观察结果来计算 t.test
。但是,您的问题是关于如何生成 NA
而不是中断循环的错误。在这种情况下,您可以使用 tryCatch
或 try
(tryCatch
的简化版本):
tryCatch(t.test(x ~ y), error = function(err) return(NA))
在这个函数中,你有 expr
参数,它是你的函数,error
是一个将 错误消息 作为输入并输出任何你想要的东西的函数想要(例如 function(err) print(err)
将简单地在屏幕上打印错误消息)并且 warning
将警告消息作为输入并以类似的方式工作。
我有很多向量,我应该对每个向量执行一个 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)
时出现错误...我该如何处理?
您收到的错误消息非常有用:您似乎没有足够的观察结果来计算 t.test
。但是,您的问题是关于如何生成 NA
而不是中断循环的错误。在这种情况下,您可以使用 tryCatch
或 try
(tryCatch
的简化版本):
tryCatch(t.test(x ~ y), error = function(err) return(NA))
在这个函数中,你有 expr
参数,它是你的函数,error
是一个将 错误消息 作为输入并输出任何你想要的东西的函数想要(例如 function(err) print(err)
将简单地在屏幕上打印错误消息)并且 warning
将警告消息作为输入并以类似的方式工作。