<p><div><div><div><div data-show-faces="false" data-height="21" data-width="100" data-layout="button_count" data-send="true" data-href="https://www.r-bloggers.com/unconf18-projects-4-umapr-greta-roomba-proxy-bias-vignette-http-caching/"></div></div><div></div></div><div></div></div>
<div>
(This article was first published on <strong><a href="https://ropensci.org/blog/2018/06/08/unconf_recap_4/"> rOpenSci - open tools for open science</a></strong>, and kindly contributed to <a rel="nofollow" href="https://www.r-bloggers.com/">R-bloggers)</a> </div>
<p>For the fourth and last day of project recaps from <a rel="nofollow" href="https://ropensci.org/tags/unconf18/" target="_blank">this year’s unconf</a>, here is an overview of the next five projects.</p>
<p>In the spirit of exploration and experimentation at rOpenSci unconferences, these projects are not necessarily finished products or in scope for rOpenSci packages.</p>
<p></p>
<h3><code>umapr</code></h3>
<p><strong>Summary:</strong> <code>umapr</code> wraps the Python implementation of UMAP to make the algorithm accessible from within R, leveraging <a rel="nofollow" href="https://cran.r-project.org/web/packages/reticulate/index.html" target="_blank"><code>reticulate</code></a> to interface with Python. Uniform Manifold Approximation and Projection (UMAP) is a non-linear dimensionality reduction algorithm. It is similar to t-SNE but computationally more efficient.</p>
<p><strong>Team:</strong> <a rel="nofollow" href="https://github.com/angela-li" target="_blank">Angela Li</a>, <a rel="nofollow" href="https://github.com/juyeongkim" target="_blank">Ju Kim</a>, <a rel="nofollow" href="https://github.com/malisas" target="_blank">Malisa Smith</a>, <a rel="nofollow" href="https://github.com/seaaan" target="_blank">Sean Hughes</a>, <a rel="nofollow" href="https://github.com/laderast" target="_blank">Ted Laderas</a></p>
<p><strong>code:</strong> <a rel="nofollow" href="https://github.com/ropenscilabs/umapr" target="_blank">https://github.com/ropenscilabs/umapr</a></p>
<p><img alt="umapr_team" src="https://i1.wp.com/ropensci.org/img/blog-images/2018-06-08-unconf18_recap_4/umapr_team.png?w=456&ssl=1" data-recalc-dims="1"><br>
<code>umapr</code> <em>team picture by <a rel="nofollow" href="https://twitter.com/mauro_lepore" target="_blank">Mauro Lepore</a></em></p>
<hr>
<h3><code>~greta</code></h3>
<p><strong>Summary:</strong> <code>greta</code> is an R package for writing statistical models and fitting them by MCMC. We luckily had the <code>greta</code> creator at the unconf: <a rel="nofollow" href="https://github.com/goldingn" target="_blank">Nick Golding</a>. The unconf team worked on contributing tutorials/vignettes to <code>greta</code>, including:</p>
<ul>
<li>linear mixed model with one random effect : <a rel="nofollow" href="https://github.com/revodavid/greta-examples/blob/master/milk.R" target="_blank">https://github.com/revodavid/greta-examples/blob/master/milk.R</a></li>
<li>linear mixed model compared to lm : <a rel="nofollow" href="https://github.com/revodavid/greta-examples/blob/master/mtcars.R" target="_blank">https://github.com/revodavid/greta-examples/blob/master/mtcars.R</a></li>
<li>linear mixed model based on an example from a TensorFlow Probability Jupyter notebook and compared to Edward2 HMC: <a rel="nofollow" href="https://github.com/ropenscilabs/greta/blob/unconf/vignettes/8_schools_example_model.Rmd" target="_blank">https://github.com/ropenscilabs/greta/blob/unconf/vignettes/8_schools_example_model.Rmd</a></li>
<li>linear mixed model running in parallel sessions using future R package : <a rel="nofollow" href="https://github.com/ropenscilabs/greta/blob/unconf/vignettes/election88.Rmd" target="_blank">https://github.com/ropenscilabs/greta/blob/unconf/vignettes/election88.Rmd</a></li>
</ul>
<p>In addition, they created a new type of sampler for Random Walk Metropolis Hastings (<a rel="nofollow" href="https://github.com/ropenscilabs/greta/tree/samplers" target="_blank">https://github.com/ropenscilabs/greta/tree/samplers</a>).</p>
<p><strong>Team:</strong> <a rel="nofollow" href="https://github.com/michaelquinn32" target="_blank">Michael Quinn</a>, <a rel="nofollow" href="https://twitter.com/revodavid" target="_blank">David Smith</a>, <a rel="nofollow" href="https://shirinsplayground.netlify.com/" target="_blank">Shirin Glander</a>, <a rel="nofollow" href="https://mattmulvahill.com/" target="_blank">Matt Mulvahill</a>, <a rel="nofollow" href="https://twitter.com/TiphCMartin" target="_blank">Tiphaine Martin</a></p>
<p><strong>code:</strong> <a rel="nofollow" href="https://github.com/ropenscilabs/greta/tree/unconf#work-during-ropensci-unconference-2018" target="_blank">https://github.com/ropenscilabs/greta/tree/unconf#work-during-ropensci-unconference-2018</a></p>
<p></p>
<hr>
<h3><code>roomba</code></h3>
<p><img alt="roomba hex logo" src="https://i2.wp.com/ropensci.org/img/blog-images/2018-06-08-unconf18_recap_4/roomba_sticker.png?w=456&ssl=1" data-recalc-dims="1"></p>
<p><strong>Summary:</strong> <code>roomba</code> is a package to transform large, multi-nested lists into a more user-friendly format (i.e. a tibble) in R. <code>roomba::roomba()</code> searches deeply-nested list for names and returns a tibble with the associated column titles. It handles empty values gracefully by substituting <code>NULL</code> values with <code>NA</code> or user-specified values.</p>
<p><img alt="roomba eg" src="https://i2.wp.com/ropensci.org/img/blog-images/2018-06-08-unconf18_recap_4/roomba_eg.png?w=456&ssl=1" data-recalc-dims="1"></p>
<p><strong>Team:</strong> <a rel="nofollow" href="https://github.com/aedobbyn" target="_blank">Amanda Dobbyn</a>, <a rel="nofollow" href="https://github.com/cstawitz" target="_blank">Christine Stawitz</a>, <a rel="nofollow" href="https://github.com/ivelasq" target="_blank">Isabella Velasquez</a>, <a rel="nofollow" href="https://github.com/cstawitz" target="_blank">Jim Hester</a>, <a rel="nofollow" href="https://github.com/ldecicco-USGS" target="_blank">Laura DeCicco</a></p>
<p><strong>code:</strong> <a rel="nofollow" href="https://github.com/ropenscilabs/roomba" target="_blank">https://github.com/ropenscilabs/roomba</a></p>
<p><img alt="roomba_team" src="https://i2.wp.com/ropensci.org/img/blog-images/2018-06-08-unconf18_recap_4/roomba_team.png?w=456&ssl=1" data-recalc-dims="1"><br>
<code>roomba</code> <em>team picture by <a rel="nofollow" href="https://twitter.com/mauro_lepore" target="_blank">Mauro Lepore</a></em></p>
<p></p>
<hr>
<h3><code>proxy-bias-vignette</code></h3>
<p><strong>Summary:</strong> <a rel="nofollow" href="https://github.com/dynamicwebpaige" target="_blank">Paige Bailey</a> worked on a tutorial/vignette designed to assist with spotting and preventing proxy bias. From Paige:</p>
<blockquote>
<p>Machine Learning systems often inherit biases against protected classes and historically disparaged groups via their training data (<a rel="nofollow" href="https://arxiv.org/pdf/1707.08120.pdf" target="_blank">Datta et al. 2017</a>). Though some biases in features are straightforward to detect (ex: age, gender, race), others are not explicit and rely on subtle correlations in machine learning algorithms to understand. The incorporation of unintended bias into predictive models is called proxy discrimination.</p>
</blockquote>
<p>In this vignette, Paige implemented an example machine learning model using decision trees, which determines whether its classification for loan recipients is biased against certain groups.</p>
<p>Check out the <a rel="nofollow" href="https://github.com/ropenscilabs/proxy-bias-vignette/blob/master/EthicalMachineLearning.ipynb" target="_blank">Jupyter Notebook</a> to get started.</p>
<p><strong>Team:</strong> <a rel="nofollow" href="https://github.com/dynamicwebpaige" target="_blank">Paige Bailey</a></p>
<p><strong>code:</strong> <a rel="nofollow" href="https://github.com/ropenscilabs/proxy-bias-vignette" target="_blank">https://github.com/ropenscilabs/proxy-bias-vignette</a></p>
<p></p>
<hr>
<h3><code>http caching</code></h3>
<p><strong>Summary:</strong> I didn’t write much code at this unconf, but since Hadley was around, I was inspired to try to integrate <a rel="nofollow" href="https://cran.rstudio.com/web/packages/httr/" target="_blank">httr</a> into <a rel="nofollow" href="https://github.com/ropensci/vcr" target="_blank">vcr</a>/<a rel="nofollow" href="https://github.com/ropensci/webmockr" target="_blank">webmockr</a> for HTTP request caching/mocking. I started the integration, but it’s not quite done yet. Check out development in the webmockr <a rel="nofollow" href="https://github.com/ropensci/webmockr/tree/adapter-httr" target="_blank">adapter-httr branch</a> and <a rel="nofollow" href="https://github.com/ropensci/webmockr/tree/adapter-httr#httr-integration" target="_blank">examples</a>. See also <a rel="nofollow" href="https://github.com/jeroen/curl" target="_blank">curl</a> package integration work in webmockr <a rel="nofollow" href="https://github.com/ropensci/webmockr/tree/adapter-curl" target="_blank">adapter-curl branch</a></p>
<p><strong>Team:</strong> <a rel="nofollow" href="https://ropensci.org/about#team" target="_blank">Scott Chamberlain</a></p>
	<p>
<div>
<div>To <strong>leave a comment</strong> for the author, please follow the link and comment on their blog: <strong><a href="https://ropensci.org/blog/2018/06/08/unconf_recap_4/"> rOpenSci - open tools for open science</a></strong>.</div>
<hr>
<a rel="nofollow" href="https://www.r-bloggers.com/">R-bloggers.com</a> offers <strong><a rel="nofollow" href="https://feedburner.google.com/fb/a/mailverify?uri=RBloggers">daily e-mail updates</a></strong> about <a rel="nofollow" href="https://www.r-project.org/" title="The R Project for Statistical Computing">R</a> news and <a rel="nofollow" href="https://www.r-bloggers.com/search/tutorial" title="R tutorials">tutorials</a> on topics such as: <a rel="nofollow" href="https://www.r-bloggers.com/search/data%20science" title="Data science">Data science</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/Big%20Data" title="Big Data">Big Data, <a rel="nofollow" href="https://www.r-users.com/" title="R jobs">R jobs</a>, visualization (<a rel="nofollow" href="https://www.r-bloggers.com/search/ggplot2" title="ggplot and ggplot2 tutorials">ggplot2</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/boxplot" title="Boxplots using lattice and ggplot2 tutorials">Boxplots</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/map" title="Maps and gis">maps</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/animation" title="Animation in R">animation</a>), programming (<a rel="nofollow" href="https://www.r-bloggers.com/search/RStudio" title="RStudio IDE for R">RStudio</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/sweave" title="Sweave and literate programming">Sweave</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/LaTeX" title="LaTeX in R">LaTeX</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/SQL" title="SQL and databases">SQL</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/eclipse" title="Eclipse IDE for R">Eclipse</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/git" title="git and github, Version Control System">git</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/hadoop" title="Large data in R using Hadoop">hadoop</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/Web+Scraping" title="Web Scraping of google, facebook, yahoo, twitter and more using R">Web Scraping</a>) statistics (<a rel="nofollow" href="https://www.r-bloggers.com/search/regression" title="Regressions and ANOVA analysis tutorials">regression</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/PCA" title="principal component analysis tutorial">PCA</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/time+series" title="Time series">time series</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/trading" title="finance trading">trading</a>) and more...
<img width="1" alt="" src="http://feeds.feedburner.com/~r/RBloggers/~4/sZcTSIkqxs8" height="1"></a></div>