c(person(given = "Eric",
family = "Persson",
role = c("aut", "cre"),
email = "expersso5@gmail.com"),
person(given = "Francois",
family = "Briatte",
role = "ctb",
email = "f.briatte@gmail.com"))
Contains the Maddison Project 2018 database, which provides
estimates of GDP per capita for all countries in the world between AD 1 and
2016. See <https://www.rug.nl/ggdc/historicaldevelopment/maddison/> for more information.
Eric Persson [aut, cre],
Francois Briatte [ctb]

'MADGRAD' Method for Stochastic Optimization
c(
person("Daniel", "Falbel", email = "daniel@rstudio.com", role = c("aut", "cre", "cph")),
person(family = "RStudio", role = c("cph")),
person(family = "MADGRAD original implementation authors.", role = c("cph"))
)
A Momentumized, Adaptive, Dual Averaged Gradient Method for Stochastic
Optimization algorithm. MADGRAD is a 'best-of-both-worlds' optimizer with the
generalization performance of stochastic gradient descent and at least as fast
convergence as that of Adam, often faster. A drop-in optim_madgrad() implementation
is provided based on Defazio et al (2020) <arxiv:2101.11075>.
Daniel Falbel [aut, cre, cph],
RStudio [cph],
MADGRAD original implementation authors. [cph]

person("Gregory", "Demin", email = "gdemin@gmail.com", role = c("aut", "cre"))
Package provides pipe-style interface for 'data.table'. It preserves all
'data.table' features without significant impact on performance. 'let'
and 'take' functions are simplified interfaces for most common data manipulation
tasks. For example, you can write 'mtcars %>% take(mean(mpg), by = am)' for
aggregation or 'mtcars %>% let(hp_wt = hp/wt, hp_wt_mpg = hp_wt/mpg)' for modification.
Use 'take_if/let_if' for conditional aggregation/modification. 'query_if' function
translates its arguments one-to-one to '[.data.table' method. Additionally there are
some conveniences such as automatic 'data.frame' conversion to 'data.table'.

Fast Data Aggregation, Modification, and Filtering with Pipes
and 'data.table'

Package provides pipe-style interface for 'data.table'. It preserves all 'data.table' features without
significant impact on performance. 'let' and 'take' functions are simplified interfaces for most common data
manipulation tasks. For example, you can write 'take(mtcars, mean(mpg), by = am)' for aggregation or
'let(mtcars, hp_wt = hp/wt, hp_wt_mpg = hp_wt/mpg)' for modification. Use 'take_if/let_if' for conditional
aggregation/modification. 'query_if' function translates its arguments one-to-one to '[.data.table' method.
Additionally there are some conveniences such as automatic 'data.frame' conversion to 'data.table'.