首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >t-test出错

t-test出错
EN

Stack Overflow用户
提问于 2013-08-06 16:39:06
回答 3查看 24.4K关注 0票数 0

我在正常的t-test中遇到了错误:

代码语言:javascript
复制
  data <- read.table("/Users/vdas/Documents/RNA-Seq_Smaples_Udine_08032013/GBM_29052013/UD_RP_25072013/filteredFPKM_matrix.txt",sep="",header=TRUE,stringsAsFactors=FALSE)

  PGT <- cbind(data[,2],data[,7],data[,24])
  PDGT <- cbind(data[,6],data[,8])
  pval2 <- NULL
  for(i in 1:length(PGT[,1])){
     pval2 <- c(pval2,t.test(as.numeric(PDGT[i,]),as.numeric(PGT[i,]))$p.value)
     print(i)
  }

错误:

代码语言:javascript
复制
Error in t.test.default(as.numeric(PDGT[i, ]), as.numeric(PGT[i, ])) : 
  not enough 'x' observations

我不明白向量出了什么问题。你能告诉我吗?我还没能弄明白。

EN

回答 3

Stack Overflow用户

发布于 2013-08-06 18:08:09

您的数据很可能具有NA值。例如:

代码语言:javascript
复制
x<-rep(NA,4)
t.test(x)

Error in t.test.default(x) : not enough 'x' observations
票数 5
EN

Stack Overflow用户

发布于 2013-08-06 20:13:50

从你的评论来看,错误似乎是由于缺少值造成的。您可以通过设置na.rm=TRUE来排除缺少的值。参考:- Missing value。在发布R问题之前,请先查看How to make a great R reproducible example?

票数 1
EN

Stack Overflow用户

发布于 2013-08-06 20:33:04

要删除NA值,请执行以下操作:

代码语言:javascript
复制
> a <- sample(c(NA, 1:5), 20, replace = TRUE)
> a
 [1] NA  1  2 NA  1  5  4  4  3  3  2  4 NA  4 NA NA  1  2 NA  5
> b <- na.omit(a)
> b
 [1] 1 2 1 5 4 4 3 3 2 4 4 1 2 5
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18075401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档