README (original) (raw)
stickyr provides data frames that hold certain columns and attributes persistently for data processing in dplyr. It can also hide specific columns.
install.packages("stickyr")
# install.packages("devtools")
devtools::install_github("UchidaMizuki/stickyr")
library(stickyr)
library(dplyr)
sticky_starwars <- new_sticky_tibble(dplyr::starwars,
cols = c(height, mass, birth_year),
col_show = !birth_year,
col_summary = list(height = mean,
mass = sum,
birth_year = median))
sticky_starwars
#> # A tibble: 87 × 13
#> # Stickers: height, mass
#> name height mass hair_…¹ skin_…² eye_c…³ sex gender homew…⁴ species films
#> <chr> <int> <dbl> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <lis>
#> 1 Luke… 172 77 blond fair blue male mascu… Tatooi… Human <chr>
#> 2 C-3PO 167 75 <NA> gold yellow none mascu… Tatooi… Droid <chr>
#> 3 R2-D2 96 32 <NA> white,… red none mascu… Naboo Droid <chr>
#> 4 Dart… 202 136 none white yellow male mascu… Tatooi… Human <chr>
#> 5 Leia… 150 49 brown light brown fema… femin… Aldera… Human <chr>
#> 6 Owen… 178 120 brown,… light blue male mascu… Tatooi… Human <chr>
#> 7 Beru… 165 75 brown light blue fema… femin… Tatooi… Human <chr>
#> 8 R5-D4 97 32 <NA> white,… red none mascu… Tatooi… Droid <chr>
#> 9 Bigg… 183 84 black light brown male mascu… Tatooi… Human <chr>
#> 10 Obi-… 182 77 auburn… fair blue-g… male mascu… Stewjon Human <chr>
#> # … with 77 more rows, 2 more variables: vehicles <list>, starships <list>, and
#> # abbreviated variable names ¹hair_color, ²skin_color, ³eye_color, ⁴homeworld
sticky_starwars |>
select(name, species)
#> # A tibble: 87 × 4
#> # Stickers: height, mass
#> name species height mass
#> <chr> <chr> <int> <dbl>
#> 1 Luke Skywalker Human 172 77
#> 2 C-3PO Droid 167 75
#> 3 R2-D2 Droid 96 32
#> 4 Darth Vader Human 202 136
#> 5 Leia Organa Human 150 49
#> 6 Owen Lars Human 178 120
#> 7 Beru Whitesun lars Human 165 75
#> 8 R5-D4 Droid 97 32
#> 9 Biggs Darklighter Human 183 84
#> 10 Obi-Wan Kenobi Human 182 77
#> # … with 77 more rows
sticky_starwars |>
group_by(species) |>
summarise()
#> # A tibble: 38 × 3
#> # Stickers: height, mass
#> species height mass
#> <chr> <dbl> <dbl>
#> 1 Aleena 79 15
#> 2 Besalisk 198 102
#> 3 Cerean 198 82
#> 4 Chagrian 196 NA
#> 5 Clawdite 168 55
#> 6 Droid NA NA
#> 7 Dug 112 40
#> 8 Ewok 88 20
#> 9 Geonosian 183 80
#> 10 Gungan 209. NA
#> # … with 28 more rows