<div dir="ltr">@Michael, in the last expression, you probably forgot a J:<div><br></div><div style>frame[J(unique(id)), mult = "last"]</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Apr 23, 2013 at 7:41 PM, Michael Nelson <span dir="ltr"><<a href="mailto:michael.nelson@sydney.edu.au" target="_blank">michael.nelson@sydney.edu.au</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">From the help for data.table::last<br>
<br>
 If x is a data.table, the last row as a one row data.table. Otherwise, whatever xts::last returns.<br>
<br>
<br>
calling lapply(.SD, last) will call last on each column in .SD. Columns within a data.table aren't  data.tables thus `xts::last` is called.  xts is on the suggests list for data.table,<br>
<br>
you could use<br>
<br>
install.packages('data.table, dependencies = 'Suggests')<br>
<br>
or manually installed xts.<br>
<br>
OR<br>
<br>
frame[, last(.SD), by = id]<br>
<br>
would work without needing xts<br>
<br>
as would<br>
<br>
frame[, .SD[.N], by = id]<br>
<br>
or without having to construct .SD (which is time consuming)<br>
<br>
frame[frame[, .I[.N],by = id]$V1]<br>
<br>
or<br>
<br>
setkey(frame, id)<br>
<br>
frame[unique(id), mult = 'last']<br>
<br>
________________________________________<br>
From: <a href="mailto:datatable-help-bounces@lists.r-forge.r-project.org">datatable-help-bounces@lists.r-forge.r-project.org</a> [<a href="mailto:datatable-help-bounces@lists.r-forge.r-project.org">datatable-help-bounces@lists.r-forge.r-project.org</a>] on behalf of Sam Steingold [<a href="mailto:sds@gnu.org">sds@gnu.org</a>]<br>

Sent: Wednesday, 24 April 2013 7:57 AM<br>
To: <a href="mailto:datatable-help@lists.r-forge.r-project.org">datatable-help@lists.r-forge.r-project.org</a><br>
Subject: [datatable-help] there is no package called ‘xts’<br>
<br>
Hi,<br>
I got this:<br>
<br>
> dt <- frame[, lapply(.SD, last) ,by=id]<br>
Finding groups (bysameorder=TRUE) ... done in 0.126secs. bysameorder=TRUE and o__ is length 0<br>
Optimized j from 'lapply(.SD, last)' to 'list(last(country), last(language), last(browser), last(platform), last(uatype), last(behavior))'<br>
Starting dogroups ... Error in loadNamespace(name) : there is no package called ‘xts’<br>
Calls: [ -> [.data.table -> last -> :: -> getExportedValue -> asNamespace -> getNamespace -> tryCatch -> tryCatchList -> tryCatchOne -> <Anonymous><br>
><br>
<br>
the help for last does mention xts, but I don't have it installed.<br>
do I need to?<br>
<br>
--<br>
Sam Steingold (<a href="http://sds.podval.org/" target="_blank">http://sds.podval.org/</a>) on Ubuntu 12.10 (quantal) X 11.0.11300000<br>
<a href="http://www.childpsy.net/" target="_blank">http://www.childpsy.net/</a> <a href="http://ffii.org" target="_blank">http://ffii.org</a> <a href="http://think-israel.org" target="_blank">http://think-israel.org</a><br>

<a href="http://mideasttruth.com" target="_blank">http://mideasttruth.com</a> <a href="http://memri.org" target="_blank">http://memri.org</a> <a href="http://camera.org" target="_blank">http://camera.org</a><br>
Ernqvat guvf ivbyngrf QZPN.<br>
_______________________________________________<br>
datatable-help mailing list<br>
<a href="mailto:datatable-help@lists.r-forge.r-project.org">datatable-help@lists.r-forge.r-project.org</a><br>
<a href="https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help" target="_blank">https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help</a><br>
_______________________________________________<br>
datatable-help mailing list<br>
<a href="mailto:datatable-help@lists.r-forge.r-project.org">datatable-help@lists.r-forge.r-project.org</a><br>
<a href="https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help" target="_blank">https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help</a><br>
</blockquote></div><br></div>