[datatable-help] possible bug when running setkey on POSIXct column
jim holtman
jholtman at gmail.com
Fri Jan 18 22:45:29 CET 2013
seems to work for me:
> library(data.table)
data.table 1.8.6 For help type: help("data.table")
> DT = data.table(X=as.POSIXct( c(rep("15DEC2008:00:00:00",10),"15DEC2008:00:00:00",rep("17DEC2008:00:00:00",2)),format="%d%b%Y:%H:%M:%S"),Y=c(1534,61,74,518,519,1519,1520,1524,3127,29250,30609,43,7853))
> setkey(DT,X,Y)
> DT
X Y
1: 2008-12-15 61
2: 2008-12-15 74
3: 2008-12-15 518
4: 2008-12-15 519
5: 2008-12-15 1519
6: 2008-12-15 1520
7: 2008-12-15 1524
8: 2008-12-15 1534
9: 2008-12-15 3127
10: 2008-12-15 29250
11: 2008-12-15 30609
12: 2008-12-17 43
13: 2008-12-17 7853
On Fri, Jan 18, 2013 at 9:44 AM, statquant <statquant at outlook.com> wrote:
> Hello I might have found a bug.
> I really cannot explain the following (please be indulgent as I narrowed the
> most I could).
>
> library(data.table)
> DT = data.table(X=as.POSIXct(
> c(rep("15DEC2008:00:00:00",10),"15DEC2008:00:00:00",rep("17DEC2008:00:00:00",2)),format="%d%b%Y:%H:%M:%S"),Y=c(1534,61,74,518,519,1519,1520,1524,3127,29250,30609,43,7853))
> setkey(DT,X,Y)
>
> #Here is what I see after the sort
>
> DT
> X Y
> 1: 2008-12-15 1534
> 2: 2008-12-15 61
> 3: 2008-12-15 74
> 4: 2008-12-15 518
> 5: 2008-12-15 519
> 6: 2008-12-15 1519
> 7: 2008-12-15 1520
> 8: 2008-12-15 1524
> 9: 2008-12-15 3127
> 10: 2008-12-15 29250
> 11: 2008-12-15 30609
> 12: 2008-12-17 43
> 13: 2008-12-17 7853
>
> #I thought that it was a POSIXct problem but if I can get the correct answer
> like this:
>
> DT[order(X,Y),]
> X Y
> 1: 2008-12-15 61
> 2: 2008-12-15 62
> 3: 2008-12-15 74
> 4: 2008-12-15 518
> 5: 2008-12-15 519
> 6: 2008-12-15 1519
> 7: 2008-12-15 1520
> 8: 2008-12-15 1524
> 9: 2008-12-15 3127
> 10: 2008-12-15 29250
> 11: 2008-12-15 30609
> 12: 2008-12-17 43
> 13: 2008-12-17 7853
>
> #Here is my session (just launched it)
>
> R> sessionInfo()
> R version 2.15.2 (2012-10-26)
> Platform: x86_64-pc-linux-gnu (64-bit)
>
> locale:
> [1] LC_CTYPE=en_GB.UTF-8 LC_NUMERIC=C LC_TIME=C
> [4] LC_COLLATE=en_GB.UTF-8 LC_MONETARY=fr_FR.UTF-8
> LC_MESSAGES=en_GB.UTF-8
> [7] LC_PAPER=C LC_NAME=C LC_ADDRESS=C
> [10] LC_TELEPHONE=C LC_MEASUREMENT=fr_FR.UTF-8
> LC_IDENTIFICATION=C
>
> attached base packages:
> [1] stats graphics grDevices datasets utils methods base
>
> other attached packages:
> [1] data.table_1.8.7 inline_0.3.10 Rcpp_0.10.2 vimcom_0.9-5
> setwidth_1.0-2
> [6] colorout_0.9-9
>
>
>
> _______________________________________________
> datatable-help mailing list
> datatable-help at lists.r-forge.r-project.org
> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help
--
Jim Holtman
Data Munger Guru
What is the problem that you are trying to solve?
Tell me what you want to do, not how you want to do it.
More information about the datatable-help
mailing list