tpoorten / dotPlotly

Generate an interactive dot plot from mummer or minimap alignments
MIT License
188 stars 52 forks source link

integer overflow for large genome #3

Open zhangrengang opened 4 years ago

zhangrengang commented 4 years ago

For large genome, I find that:

> queryLenAgg = tapply(alignments$lenAln, alignments$queryID, sum)
There were 12 warnings (use warnings() to see them)
> warnings()
Warning messages:
1: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
2: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
3: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
4: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
5: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
6: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
7: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
8: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
9: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
10: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
11: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
12: In FUN(X[[i]], ...) : integer overflow - use sum(as.numeric(.))
> queryLenAgg
chr01 chr02 chr03 chr04 chr05 chr06 chr07 chr08 chr09 chr10 chr11 chr12
   NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA

Clearly, the summed integer is too large. queryLenAgg = tapply(as.numeric(alignments$lenAln), alignments$queryID, sum) will work.