繁体   English   中英

Foverlaps 错误: if (any(x[[xintervals[2L]]] - x[[xintervals[1L]]] < 0L)) 中的错误停止

[英]Foverlaps error: Error in if (any(x[[xintervals[2L]]] - x[[xintervals[1L]]] < 0L)) stop

我可以成功地将foverlaps与我的数据集的小样本一起使用,但是当使用完整数据(超过 30k 行的 data.tables)时,它会崩溃并抛出以下错误:

错误信息:

Error in if (any(x[[xintervals[2L]]] - x[[xintervals[1L]]] < 0L)) stop("All entries in column ",  :
  missing value where TRUE/FALSE needed

我解释错误消息的方式是两个 data.tables 之间没有重叠。

Q1-我是否很好地解释了消息?

Q2-知道为什么这可能会发生在更大的数据集上吗? 这可能是由于数据集的大小吗?

我确实有很多独特的值,根据foverlaps帮助文件,可以预期它们会按比例减慢速度,但不会在它进入数百万行之前,而这里的情况远非如此。 谢谢你。

没有可重现的示例,因此无法调查您的问题。
正如 Carl 在评论中所述,这可能是由输入中存在的 NA 值引起的。
在最近的开发版本中,Arun 对foverlaps进行了一些改进。 当检测到 NA 值时,这些改进之一是更好的错误消息。

install.packages("data.table")

从 1.12.2 开始,此功能已经在 CRAN 上。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM