Hi, Welcome to the list. There's two ways: y[,.SD[which.max(...)],by=...] or y[,.I[which.max(...)],by=...] See ?data.table for .SD and .I
> Hello, > > I hope you can help me with the datatable. My aim is to know the > position of the daily maximum temperature (Ta). > > str(y) > Classes data.table and 'data.frame': 17135 obs. of 6 variables: > $ X : chr "01/01/2010" "01/01/2010" "01/01/2010" "01/01/2010" ... > $ X.1: chr "0:10:00" "0:20:00" "0:30:00" "0:40:00" ... > $ Ta : num 5.28 5.45 5.54 5.54 5.51 5.51 5.5 5.56 5.58 5.63 ... > $ HR : int 100 100 100 100 100 100 100 100 100 100 ... > $ RS : int 0 0 0 0 0 0 0 0 0 0 ... > $ v : num 2.3 2.5 1.1 2.3 2.2 2.1 2.2 2.9 2.4 2.6 ... > - attr(*, ".internal.selfref")=<externalptr> > > For this i made the datatable and than: > >> z <- y[,which.max(Ta),by=X] >> z > X V1 > 1: 01/01/2010 84 > 2: 02/01/2010 132 > 3: 03/01/2010 84 > 4: 04/01/2010 92 > 5: 05/01/2010 1 > --- > 115: 25/04/2010 92 > 116: 26/04/2010 96 > 117: 27/04/2010 86 > 118: 28/04/2010 90 > 119: 29/04/2010 88 > > > it works well, but the index don´t correspond with the index of the > original table. Have you any idea? > > When i try it with z <- y[,max(Ta),by=X] it works perfect, but so I > don`t know the time, > > Thanks for your help. > > Best regards, > > Dominic > _______________________________________________ > datatable-help mailing list > [email protected] > https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help > _______________________________________________ datatable-help mailing list [email protected] https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help
