class: center, middle, inverse, title-slide # overviewR ### Cosima Meyer ### 2020-11-27 --- layout: true .footer[bit.ly/package-development] --- ## What is `overviewR`? - Small but powerful package to get a quick overview of your data <br/> <br/> - Useful for academic and non-academic purposes alike <br/> <br/> - Focus on plots and tables to visualize data structure <br/> <br/> - Highly customizable (`tidyverse`-based) and open to suggestions <svg style="height:0.8em;top:.04em;position:relative;" viewBox="0 0 496 512"><path d="M0 256c0 137 111 248 248 248s248-111 248-248S385 8 248 8 0 119 0 256zm200-48c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm158.5 16.5c-14.8-13.2-46.2-13.2-61 0L288 233c-8.3 7.4-21.6.4-19.8-10.8 4-25.2 34.2-42.1 59.9-42.1S384 197 388 222.2c1.7 11.1-11.4 18.3-19.8 10.8l-9.7-8.5zM157.8 325.8C180.2 352.7 213 368 248 368s67.8-15.4 90.2-42.2c13.6-16.2 38.1 4.2 24.6 20.5C334.3 380.4 292.5 400 248 400s-86.3-19.6-114.8-53.8c-13.5-16.3 11.2-36.7 24.6-20.4z"/></svg> --- class: show-only-last-code-result ## What can you do with `overviewR`? ```r install.packages("overviewR") library(overviewR) ``` -- <p align="center"><img src="overview-overviewr.png" width="550"></p> --- class: show-only-last-code-result ## Table: `overview_tab` ```r output_table <- overview_tab(dat = toydata, id = ccode, time = year) ``` -- <table class="table" style="width: auto !important; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;background-color: #b7c4ce !important;"> ccode </th> <th style="text-align:left;background-color: #b7c4ce !important;"> time_frame </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;"> AGO </td> <td style="text-align:left;"> 1990 - 1992 </td> </tr> <tr> <td style="text-align:left;background-color: #b7c4ce !important;"> BEN </td> <td style="text-align:left;background-color: #b7c4ce !important;"> 1995 - 1999 </td> </tr> <tr> <td style="text-align:left;"> FRA </td> <td style="text-align:left;"> 1993, 1996, 1999 </td> </tr> <tr> <td style="text-align:left;background-color: #b7c4ce !important;"> GBR </td> <td style="text-align:left;background-color: #b7c4ce !important;"> 1991, 1993, 1995, 1997, 1999 </td> </tr> <tr> <td style="text-align:left;"> RWA </td> <td style="text-align:left;"> 1990 - 1995 </td> </tr> </tbody> </table> --- class: show-only-last-code-result ## Table: `overview_crosstab` ```r output_crosstab <- overview_crosstab( dat = toydata, cond1 = gdp, cond2 = population, threshold1 = 25000, threshold2 = 27000, id = ccode, time = year ) ``` -- <table class="table" style="width: auto !important; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;background-color: #b7c4ce !important;"> part1 </th> <th style="text-align:left;background-color: #b7c4ce !important;"> part2 </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;"> AGO (1990, 1992), FRA (1993), GBR (1997) </td> <td style="text-align:left;"> BEN (1996, 1999), FRA (1999), GBR (1993), RWA (1992, 1994) </td> </tr> <tr> <td style="text-align:left;background-color: #b7c4ce !important;"> BEN (1997), RWA (1990) </td> <td style="text-align:left;background-color: #b7c4ce !important;"> AGO (1991), BEN (1995, 1998), FRA (1996), GBR (1991, 1995, 1999), RWA (1991, 1993, 1995) </td> </tr> </tbody> </table> --- class: show-only-last-code-result ## Store your tables: `overview_print` ```r overview_print(obj = output_table) ``` -- <p align="center"><img src="ex1.png" width="400"></p> --- class: show-only-last-code-result ## Store your tables: `overview_print` ```r overview_print( obj = output_crosstab, title = "Cross table of the sample", crosstab = TRUE, cond1 = "GDP", cond2 = "Population" ) ``` -- <p align="center"><img src="ex3.png" width="500"></p> --- class: show-only-last-code-result ## Plots: `overview_plot` ```r plot <- overview_plot(dat = toydata, id = ccode, time = year) ``` -- <p align="center"><img src="plot.png" width="400"></p> --- ## Plots: `overview_plot`  --- class: show-only-last-code-result ## Plots: `overview_heat` ```r overview_heat(toydata_red, ccode, year, perc = TRUE, exp_total = 12) ``` -- <p align="center"><img src="plot-heat.png" width="450"></p> --- class: show-only-last-code-result ## Plots: `overview_na` ```r overview_na(toydata_with_na) ``` -- <p align="center"><img src="unnamed-chunk-23-1.png" width="500"></p> --- class: show-only-last-code-result ## Plots: `overview_na` ```r overview_na(toydata_with_na, * perc = FALSE) ``` -- <p align="center"><img src="unnamed-chunk-24-1.png" width="500"></p> --- ## Store your plots ```r library(ggplot2) # Create plot plot <- overview_plot(dat = toydata, id = ccode, time = year) # Store it with ggplot ggsave(plot, file = "plot.png") ``` --- layout: false --- class: inverse background-image: url("computer2.png") background-size: 200px background-position: 95% 8% <br><br><br> # More resources - overviewR - [overviewR](https://cosimameyer.github.io/overviewR/) - [overviewR CheatSheet](https://github.com/cosimameyer/overviewR/blob/master/man/figures/CheatSheet_overviewR.pdf) - [overviewR Github repository](https://github.com/cosimameyer/overviewR) - How to write R packages - [Cosima Meyer and Dennis Hammerschmidt: How to write your own R package and publish it on CRAN](https://www.mzes.uni-mannheim.de/socialsciencedatalab/article/r-package/) --- class: inverse, middle, center <img src="computer2.png" width=200 height=150> <svg style="height:0.8em;top:.04em;position:relative;fill:white;" viewBox="0 0 512 512"><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></svg> [@cosima_meyer](https://twitter.com/cosima_meyer) <svg style="height:0.8em;top:.04em;position:relative;fill:white;" viewBox="0 0 496 512"><path d="M336.5 160C322 70.7 287.8 8 248 8s-74 62.7-88.5 152h177zM152 256c0 22.2 1.2 43.5 3.3 64h185.3c2.1-20.5 3.3-41.8 3.3-64s-1.2-43.5-3.3-64H155.3c-2.1 20.5-3.3 41.8-3.3 64zm324.7-96c-28.6-67.9-86.5-120.4-158-141.6 24.4 33.8 41.2 84.7 50 141.6h108zM177.2 18.4C105.8 39.6 47.8 92.1 19.3 160h108c8.7-56.9 25.5-107.8 49.9-141.6zM487.4 192H372.7c2.1 21 3.3 42.5 3.3 64s-1.2 43-3.3 64h114.6c5.5-20.5 8.6-41.8 8.6-64s-3.1-43.5-8.5-64zM120 256c0-21.5 1.2-43 3.3-64H8.6C3.2 212.5 0 233.8 0 256s3.2 43.5 8.6 64h114.6c-2-21-3.2-42.5-3.2-64zm39.5 96c14.5 89.3 48.7 152 88.5 152s74-62.7 88.5-152h-177zm159.3 141.6c71.4-21.2 129.4-73.7 158-141.6h-108c-8.8 56.9-25.6 107.8-50 141.6zM19.3 352c28.6 67.9 86.5 120.4 158 141.6-24.4-33.8-41.2-84.7-50-141.6h-108z"/></svg> [cosimameyer.rbind.io](http://cosimameyer.rbind.io) <svg style="height:0.8em;top:.04em;position:relative;fill:white;" viewBox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg> Slides at </br></br> [bit.ly/package-development]() --- .footer[Illustrations are either created by myself, my co-author, or by canva.com] <!-- --- --> <!-- class: show-only-last-code-result --> <!-- ## `toydata` --> <!-- `overviewR` has an internal (comparative) data set with `toydata` on a **country-year level**: --> <!-- -- --> <!-- ```{r, eval=FALSE} --> <!-- head(toydata) --> <!-- ``` --> <!-- -- --> <!-- ```{r, echo=FALSE} --> <!-- toydata2 <- head(toydata) --> <!-- toydata2 %>% --> <!-- head() %>% --> <!-- kable() %>% --> <!-- row_spec(seq(0,nrow(toydata2),2), background="#b7c4ce") %>% --> <!-- kable_styling(full_width=FALSE) --> <!-- ``` --> <!-- -- --> <!-- ```{r, eval=FALSE} --> <!-- # Store it as a .tex file directly --> <!-- overview_print(obj = output_table, --> <!-- * save_out = TRUE, --> <!-- * path = "SET-YOUR-PATH", --> <!-- * file = "output.tex") --> <!-- ``` -->