A collection of Rfast functions for data analysis. Note 1: The vast majority of the functions accept matrices only, not data.frames. Note 2: Do not have matrices or vectors with have missing data (i.e NAs). We do no check about them and C++ internally transforms them into zeros (0), so you may get wrong results. Note 3: In general, make sure you give the correct input, in order to get the correct output. We do no checks and this is one of the many reasons we are fast.
139
stars
19
forks
source link
Sort.int function incorrectly sorts vectors under certain conditions #105
Describe the bug
The Sort.int function exhibits peculiar behavior when sorting vectors - in particular, if the vector contains a single 1 value and no 0 value, instead of returning the properly sorted vector, it returns the sorted vector with the 1 value dropped, and a 0 appended to the end of the vector.
To Reproduce
library(Rfast)
a = c(1L, 3L, 2L, 5L, 4L)
Rfast::Sort.int(a)
[1] 2 3 4 5 0
Expected behavior
base::sort.int(a)
[1] 1 2 3 4 5
Desktop:
sessionInfo()
R version 4.3.3 (2024-02-29 ucrt)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 19045)
Describe the bug The Sort.int function exhibits peculiar behavior when sorting vectors - in particular, if the vector contains a single 1 value and no 0 value, instead of returning the properly sorted vector, it returns the sorted vector with the 1 value dropped, and a 0 appended to the end of the vector.
To Reproduce
[1] 2 3 4 5 0
Expected behavior
[1] 1 2 3 4 5
Desktop:
R version 4.3.3 (2024-02-29 ucrt) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64 (build 19045)
Matrix products: default
locale: [1] LC_COLLATE=English_United States.utf8 LC_CTYPE=English_United States.utf8 LC_MONETARY=English_United States.utf8 LC_NUMERIC=C
[5] LC_TIME=English_United States.utf8
time zone: America/New_York tzcode source: internal
attached base packages: [1] stats graphics grDevices utils datasets methods base
other attached packages: [1] Rfast_2.1.0 RcppParallel_5.1.7 RcppZiggurat_0.1.6 Rcpp_1.0.12
loaded via a namespace (and not attached): [1] digest_0.6.34 fastmap_1.1.1 xfun_0.41 knitr_1.45 parallel_4.3.3 htmltools_0.5.7 rmarkdown_2.25 cli_3.6.2 compiler_4.3.3
[10] rstudioapi_0.15.0 tools_4.3.3 evaluate_0.23 yaml_2.3.8 rlang_1.1.3