dbplyr

Database (DBI) backend for dplyr

https://github.com/tidyverse/dbplyr

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    12 of 155 committers (7.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (18.3%) to scientific vocabulary

Keywords

database r

Keywords from Contributors

package-creation rmarkdown book pandoc literate-programming tidy-data latex bookdown tidyverse ropensci
Last synced: 6 months ago · JSON representation

Repository

Database (DBI) backend for dplyr

Basic Info
Statistics
  • Stars: 488
  • Watchers: 22
  • Forks: 182
  • Open Issues: 139
  • Releases: 22
Topics
database r
Created almost 9 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License Code of conduct Codeowners Support

README.Rmd

---
output: github_document
---



```{r, echo = FALSE}
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "README-"
)
```

# dbplyr 


[![CRAN status](https://www.r-pkg.org/badges/version/dbplyr)](https://cran.r-project.org/package=dbplyr)
[![R-CMD-check](https://github.com/tidyverse/dbplyr/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/tidyverse/dbplyr/actions/workflows/R-CMD-check.yaml)
[![Codecov test coverage](https://codecov.io/gh/tidyverse/dbplyr/branch/main/graph/badge.svg)](https://app.codecov.io/gh/tidyverse/dbplyr?branch=main)


## Overview

dbplyr is the database backend for [dplyr](https://dplyr.tidyverse.org). It allows you to use remote database tables as if they are in-memory data frames by automatically converting dplyr code into SQL. 

To learn more about why you might use dbplyr instead of writing SQL, see `vignette("sql")`. To learn more about the details of the SQL translation, see `vignette("translation-verb")` and `vignette("translation-function")`.

## Installation

```{r, eval = FALSE}
# The easiest way to get dbplyr is to install the whole tidyverse:
install.packages("tidyverse")

# Alternatively, install just dbplyr:
install.packages("dbplyr")

# Or the development version from GitHub:
# install.packages("pak")
pak::pak("tidyverse/dbplyr")
```

## Usage

dbplyr is designed to work with database tables as if they were local data frames. To demonstrate this I'll first create an in-memory SQLite database and copy over a dataset:

```{r setup}
library(dplyr, warn.conflicts = FALSE)

con <- DBI::dbConnect(RSQLite::SQLite(), ":memory:")
copy_to(con, mtcars)
```

Note that you don't actually need to load dbplyr with `library(dbplyr)`; dplyr automatically loads it for you when it sees you working with a database. Database connections are coordinated by the DBI package. Learn more at 

Now you can retrieve a table using `tbl()` (see `?tbl_dbi` for more details). Printing it just retrieves the first few rows:

```{r}
mtcars2 <- tbl(con, "mtcars")
mtcars2
```

All dplyr calls are evaluated lazily, generating SQL that is only sent to the database when you request the data.

```{r}
# lazily generates query
summary <- mtcars2 %>% 
  group_by(cyl) %>% 
  summarise(mpg = mean(mpg, na.rm = TRUE)) %>% 
  arrange(desc(mpg))

# see query
summary %>% show_query()

# execute query and retrieve results
summary %>% collect()
```

## Code of Conduct

Please note that the dbplyr project is released with a [Contributor Code of Conduct](https://dbplyr.tidyverse.org/CODE_OF_CONDUCT.html). By contributing to this project, you agree to abide by its terms.

Owner

  • Name: tidyverse
  • Login: tidyverse
  • Kind: organization

The tidyverse is a collection of R packages that share common principles and are designed to work together seamlessly

GitHub Events

Total
  • Issues event: 56
  • Watch event: 15
  • Delete event: 4
  • Issue comment event: 48
  • Push event: 40
  • Pull request review event: 22
  • Pull request review comment event: 16
  • Pull request event: 29
  • Fork event: 11
  • Create event: 5
Last Year
  • Issues event: 56
  • Watch event: 15
  • Delete event: 4
  • Issue comment event: 48
  • Push event: 40
  • Pull request review event: 22
  • Pull request review comment event: 16
  • Pull request event: 29
  • Fork event: 11
  • Create event: 5

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 3,523
  • Total Committers: 155
  • Avg Commits per committer: 22.729
  • Development Distribution Score (DDS): 0.446
Past Year
  • Commits: 16
  • Committers: 8
  • Avg Commits per committer: 2.0
  • Development Distribution Score (DDS): 0.625
Top Committers
Name Email Commits
hadley h****m@g****m 1,951
Romain François r****n@r****m 580
Maximilian Girlich m****h@m****m 338
Kirill Müller k****r 151
Lionel Henry l****y@g****m 92
Kirill Müller k****r@i****h 46
Edgar Ruiz e****z 37
Cole Arendt c****t@o****m 20
Hannes Mühleisen h****s@m****g 17
lindbrook l****k@g****m 17
Jim Hester j****r@g****m 16
Mara Averick m****k@g****m 13
Kevin Ushey k****y@g****m 9
Eric Neer E****r@g****m 8
Javier Luraschi j****i@h****m 7
Sergey Goder s****r@f****m 6
Sam s****e 6
Simon P. Couch s****h@g****m 6
leondutoit l****n@c****m 5
Ilari Scheinin i****n@g****m 5
Daniel Possenriede p****e@g****m 4
jennybc j****y@s****a 4
Christophe Dervieux c****x@g****m 4
Sergio Oller s****r@g****m 4
Harold Pimentel h****l@g****m 3
Imanuel Costigan i****n@m****m 3
Michael Thomson 5****n 3
David Fong v****m@b****m 3
Austen Head a****d@g****m 3
Arunkumar Srinivasan a****b@g****m 3
and 125 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 312
  • Total pull requests: 211
  • Average time to close issues: 2 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 158
  • Total pull request authors: 34
  • Average comments per issue: 1.95
  • Average comments per pull request: 1.12
  • Merged pull requests: 149
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 55
  • Pull requests: 40
  • Average time to close issues: 9 days
  • Average time to close pull requests: 18 days
  • Issue authors: 37
  • Pull request authors: 13
  • Average comments per issue: 0.05
  • Average comments per pull request: 0.63
  • Merged pull requests: 16
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • mgirlich (44)
  • hadley (24)
  • MichaelChirico (15)
  • ablack3 (8)
  • edward-burn (8)
  • carlganz (7)
  • simonpcouch (6)
  • lschneiderbauer (6)
  • kmishra9 (5)
  • fh-afrachioni (5)
  • moodymudskipper (4)
  • bairdj (4)
  • DavisVaughan (3)
  • shearerpmm (3)
  • krlmlr (3)
Pull Request Authors
  • mgirlich (55)
  • hadley (52)
  • ejneer (11)
  • MichaelChirico (11)
  • simonpcouch (10)
  • edward-burn (10)
  • krlmlr (8)
  • ablack3 (5)
  • fh-mthomson (5)
  • aguynamedryan (4)
  • thomashulst (4)
  • zacdav-db (4)
  • apalacio9502 (2)
  • owenjonesuob (2)
  • liudvikasakelis (2)
Top Labels
Issue Labels
feature (28) bug (19) verb trans :robot: (17) func trans :earth_africa: (9) backend :man_dancing: (7) MSSQL (5) reprex (5) upkeep (5) help wanted :heart: (3) documentation (3) dplyr (2)
Pull Request Labels

Packages

  • Total packages: 3
  • Total downloads:
    • cran 629,553 last-month
  • Total docker downloads: 120,218,673
  • Total dependent packages: 125
    (may contain duplicates)
  • Total dependent repositories: 724
    (may contain duplicates)
  • Total versions: 59
  • Total maintainers: 1
cran.r-project.org: dbplyr

A 'dplyr' Back End for Databases

  • Versions: 23
  • Dependent Packages: 117
  • Dependent Repositories: 674
  • Downloads: 629,553 Last month
  • Docker Downloads: 120,218,673
Rankings
Docker downloads count: 0.0%
Forks count: 0.4%
Downloads: 0.4%
Average: 0.5%
Dependent repos count: 0.6%
Stargazers count: 0.9%
Dependent packages count: 1.0%
Maintainers (1)
Last synced: 6 months ago
proxy.golang.org: github.com/tidyverse/dbplyr
  • Versions: 22
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 6 months ago
conda-forge.org: r-dbplyr
  • Versions: 14
  • Dependent Packages: 8
  • Dependent Repositories: 50
Rankings
Dependent repos count: 5.0%
Dependent packages count: 7.1%
Average: 11.3%
Forks count: 14.2%
Stargazers count: 18.9%
Last synced: 6 months ago

Dependencies

DESCRIPTION cran
  • R >= 3.1 depends
  • DBI >= 1.0.0 imports
  • R6 >= 2.2.2 imports
  • assertthat >= 0.2.0 imports
  • blob >= 1.2.0 imports
  • cli >= 3.3.0 imports
  • dplyr >= 1.0.9 imports
  • glue >= 1.2.0 imports
  • lifecycle >= 1.0.0 imports
  • magrittr * imports
  • methods * imports
  • pillar >= 1.5.0 imports
  • purrr >= 0.2.5 imports
  • rlang >= 1.0.0 imports
  • tibble >= 1.4.2 imports
  • tidyselect >= 0.2.4 imports
  • utils * imports
  • vctrs >= 0.4.1 imports
  • withr * imports
  • Lahman * suggests
  • RMariaDB >= 1.0.2 suggests
  • RPostgreSQL * suggests
  • RPostgres >= 1.1.3 suggests
  • RSQLite >= 2.1.0 suggests
  • bit64 * suggests
  • covr * suggests
  • knitr * suggests
  • nycflights13 * suggests
  • odbc * suggests
  • rmarkdown * suggests
  • testthat >= 3.0.2 suggests
  • tidyr >= 1.2.0 suggests