微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ifelse 为条件 x < very.small.number 返回不正确的值

如何解决ifelse 为条件 x < very.small.number 返回不正确的值

如果异常值小于 bonferroni 校正的 p 值,我会尝试识别它们。使用 ifelse(df$score

df<- data.frame("cell.id"= c(1:ncol(atac)),"count"=atac$peak_region_fragments,stringsAsFactors = FALSE)

lambda <- mean(df$count)
mypoisson$score <- ""
for (i in 1:nrow(df)){
  message(i)
  df$score[i] <- 1 - ppois(df$count[i],lambda = lambda)
}
bonferroni <- 0.05/ncol(atac)
df$outler <- ifelse(df$score < bonferroni,'yes','no')

bonferroni
[1] 6.52912e-06

head(df)
                   cell.id count             score outler
99_AAACGAAAGCTACGCC-1    1  9618                 1    yes
99_AAACGAAAGGCAGTAC-1    2  5142                 1    yes
99_AAACGAAAGGGCGAAG-1    3  7990                 1    yes
99_AAACGAAAGTCGACCC-1    4  8521                 1    yes
99_AAACGAAAGTTACCAC-1    5  6444                 1    yes
99_AAACGAACAAGCCTTA-1    6 11280 0.964436427969221    yes

是的... 1 肯定小于 6.52912e-06... smh

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。