You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Slow="548410d23dd74b625e8ea9aeb1a5d2e9dddd2927", # Parent of the first commit in the PR (https://github.com/Rdatatable/data.table/commit/548410d23dd74b625e8ea9aeb1a5d2e9dddd2927)
287
287
Fast="c0b32a60466bed0e63420ec105bc75c34590865e"), # Commit in the PR (https://github.com/Rdatatable/data.table/pull/7144/commits) that uses a much faster implementation
288
288
289
+
"tables() !recursive refactor in #2606"=atime::atime_test(
Copy file name to clipboardExpand all lines: NEWS.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -56,6 +56,8 @@
56
56
57
57
13.New`mergelist()`and`setmergelist()`similarlywork_ala_`Reduce()`torecursivelymergea`list`ofdata.tables, [#599](https://github.com/Rdatatable/data.table/issues/599). Different join modes (_left_, _inner_, _full_, _right_, _semi_, _anti_, and _cross_) are supported through the `how` argument; duplicate handling goes through the `mult` argument. `setmergelist()` carefully avoids copies where one is not needed, e.g. in a 1:1 left join. Thanks Patrick Nicholson for the FR (in 2013!), @jangorecki for the PR, and @MichaelChirico for extensive reviews and fine-tuning.
58
58
59
+
14.`tables()`nowsupportsa`recursive=TRUE`argumenttodetect`data.table`objectsnestedwithinplainlists, suchasthoseproducedby`split()`ormanuallistconstruction, [#2606](https://github.com/Rdatatable/data.table/issues/2606). The recursive search skips data.frame and data.table objects to avoid descending into list-columns. Nested data.tables are reported with intuitive R-like names using $ and [[ ]] notation. Thanks to @MichaelChirico for the suggestion and @venom1204 for the implementation.
60
+
59
61
### BUG FIXES
60
62
61
63
1.`fread()`nolongerwarnsoncertainsystemsonR4.5.0+wherethefileownercan't be resolved, [#6918](https://github.com/Rdatatable/data.table/issues/6918). Thanks @ProfFancyPants for the report and PR.
\item{mb}{ afunctionwhichacceptsa \code{data.table} andreturnsitssizeinbytes.Bydefault, \code{type_size} (sameas \code{TRUE}) providesafastlowerboundbyexcludingthesizeofcharacterstringsinR's global cache (which may be shared) and excluding the size of list column items (which also may be shared). A column \code{"MB"} is included in the output unless \code{FALSE} or \code{NULL}. }
\item{env}{ An \code{environment}, typically the \code{.GlobalEnv} by default, see Details. }
16
17
\item{silent}{ \code{logical}; should the output be printed? }
17
18
\item{index}{ \code{logical}; if \code{TRUE}, the column \code{INDICES} is added to indicate the indices assorted with each object, see \code{\link{indices}}. }
19
+
\item{recursive}{ \code{logical}; if \code{TRUE}, \code{tables} will perform a full,
20
+
iterative search into list objects to find nested data.tables.
21
+
Defaults to \code{FALSE} for backward compatibility. }
18
22
}
19
23
\details{
20
24
Usually \code{tables()} is executed at the prompt, where \code{parent.frame()} returns \code{.GlobalEnv}. \code{tables()} may also be useful inside functions where \code{parent.frame()} is the local scope of the function; in such a scenario, simply set it to \code{.GlobalEnv} to get the same behaviour as at prompt.
0 commit comments