Skip to content

Instantly share code, notes, and snippets.

@mamacneil
Created September 12, 2018 11:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mamacneil/db24448ace5b01d2f89a4d0c86ddce1d to your computer and use it in GitHub Desktop.
Save mamacneil/db24448ace5b01d2f89a4d0c86ddce1d to your computer and use it in GitHub Desktop.
Week 2: R programming – functions, loops, and logic
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Lecture 2 - R programming\n",
"\n",
"\n",
"## **NB:** In-class exercises (tasks) must be submitted before leaving the labs to receive credit!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## A [Slack](https://slack.com) group has been added for the course: [link](https://join.slack.com/t/biol3872/shared_invite/enQtNDMwNjM1MzA3NTY5LTlhZjU5MDQ2NWJiNDlhMTljNjVkNTMxNTM3YWU4OGMwMDUzYjljNDYxNjI0ZGE4NjU4NTc0ZTRhY2IxNjE5ZjQ)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Useful resources\n",
"\n",
"[R-Studio cheat sheets](https://www.rstudio.com/resources/cheatsheets/?utm_content=buffer7935d&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer)\\** - exceptionally useful single pages summarizing many of the most common comnmands for various R-related activities.\n",
"\n",
"R Cookbook: http://www.cookbook-r.com"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"## R programming\n",
"\n",
"R is what is known as an object-oriented statisical programming language. To unpack that a bit:\n",
"\n",
" - [**Object-oriented**](https://en.wikipedia.org/wiki/Object-oriented_programming) means that, when writing code, specific words are given status as objects - the buliding blocks of data, functions, and operations that act together to achieve an outcome\n",
" - [**Statistical programming**] - means that R is not intended for general use, but rather is a platform dedicated to the analysis of data, with conventions and associated packages directed to that end. \n",
" \n",
"Where there is a core set of libraries (packages of code) in every R installation, R relies hevaily on a set of freely-contributed packages that are created outside of the R core developers, available on their repository website, [CRAN](https://cran.r-project.org/web/packages/available_packages_by_name.html). There are a lot of them. And of varying quality. However R's success as a programming language for science stems largely from the crowd-sourced nature of CRAN and the ability of clever people who come up with new statistical methods to *easily* integrate them into the R environment. So when using R, one will often see one of the following, used to load up packages of code and make them available for use:\n",
"\n",
"``library()``\n",
"\n",
"``require()``\n",
"\n",
"Both of which, somewhat confusingly, will load the package given within the parentheses. The ``require()`` function is intended for use within other functions, so they will only be available when the function is running.\n",
"\n",
"To have a look at the packages installed on your current R kernel, try:"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"<table>\n",
"<thead><tr><th></th><th scope=col>Package</th><th scope=col>LibPath</th><th scope=col>Version</th><th scope=col>Priority</th><th scope=col>Depends</th><th scope=col>Imports</th><th scope=col>LinkingTo</th><th scope=col>Suggests</th><th scope=col>Enhances</th><th scope=col>License</th><th scope=col>License_is_FOSS</th><th scope=col>License_restricts_use</th><th scope=col>OS_type</th><th scope=col>MD5sum</th><th scope=col>NeedsCompilation</th><th scope=col>Built</th></tr></thead>\n",
"<tbody>\n",
"\t<tr><th scope=row>abind</th><td><span style=white-space:pre-wrap>abind </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.4-5 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 1.5.0) </span> </td><td><span style=white-space:pre-wrap>methods, utils </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>LGPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>acepack</th><td>acepack </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.4.1 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>testthat </td><td>NA </td><td>MIT + file LICENSE </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>alr4</th><td><span style=white-space:pre-wrap>alr4 </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.0.5 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.1.1), car, effects </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>arm</th><td><span style=white-space:pre-wrap>arm </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.9-3 </td><td><span style=white-space:pre-wrap>NA </span> </td><td>R (&gt;= 3.1.0), MASS, Matrix (&gt;= 1.0), stats, lme4 (&gt;= 1.0) </td><td><span style=white-space:pre-wrap>abind, coda, graphics, grDevices, methods, nlme, utils </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 3) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>assertthat</th><td>assertthat </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>0.2.0 </td><td>NA </td><td>NA </td><td>tools </td><td>NA </td><td>testthat </td><td>NA </td><td>GPL-3 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>backports</th><td><span style=white-space:pre-wrap>backports </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.1.0 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.0) </span> </td><td><span style=white-space:pre-wrap>utils </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL-2 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>base</th><td>base </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.4.1 </td><td>base </td><td>NA </td><td>NA </td><td>NA </td><td>methods </td><td>NA </td><td>Part of R 3.4.1 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>base64enc</th><td><span style=white-space:pre-wrap>base64enc </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>0.1-3 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.9.0) </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>png </td><td><span style=white-space:pre-wrap>GPL-2 | GPL-3 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>bdsmatrix</th><td><span style=white-space:pre-wrap>bdsmatrix </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.3-2 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>methods, R (&gt;= 2.0.0) </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>LGPL-2 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>bindr</th><td>bindr </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>0.1 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>testthat </td><td>NA </td><td>MIT + file LICENSE </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>bindrcpp</th><td>bindrcpp </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>0.2 </td><td>NA </td><td>NA </td><td>Rcpp, bindr </td><td>Rcpp, plogr </td><td>testthat </td><td>NA </td><td>MIT + file LICENSE </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>bitops</th><td><span style=white-space:pre-wrap>bitops </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.0-6 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>boot</th><td><span style=white-space:pre-wrap>boot </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.3-20 </td><td>recommended </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.0), graphics, stats </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>MASS, survival </span></td><td>NA </td><td><span style=white-space:pre-wrap>Unlimited </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>brew</th><td>brew </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.0-6 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>GPL-2 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>broom</th><td>broom </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>0.4.2 </td><td>NA </td><td>NA </td><td>plyr, dplyr, tidyr, psych, stringr, reshape2, nlme, methods </td><td>NA </td><td>knitr, boot, survival, gam, glmnet, lfe, Lahman, MASS, sp,\n",
"maps, maptools, multcomp, testthat, lme4, zoo, lmtest, plm,\n",
"biglm, ggplot2, nnet, geepack, AUC, ergm, network,\n",
"statnet.common, xergm, btergm, binGroup, Hmisc, bbmle, gamlss,\n",
"rstan, rstanarm, brms, coda, gmm, Matrix, ks, purrr, orcutt,\n",
"mgcv, lmodel2, poLCA, mclust, covr, lsmeans, betareg, robust,\n",
"akima</td><td>NA </td><td>MIT + file LICENSE </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>car</th><td><span style=white-space:pre-wrap>car </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>2.1-5 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.2.0) </span> </td><td>MASS, mgcv, nnet, pbkrtest (&gt;= 0.4-4), quantreg, grDevices,\n",
"utils, stats, graphics </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>alr4, boot, coxme, leaps, lme4, lmtest, Matrix, MatrixModels,\n",
"nlme, rgl (&gt;= 0.93.960), sandwich, SparseM, survival, survey,\n",
"nloptr </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>caTools</th><td><span style=white-space:pre-wrap>caTools </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.17.1 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.2.0) </span> </td><td><span style=white-space:pre-wrap>bitops </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>MASS, rpart </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL-3 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>checkmate</th><td><span style=white-space:pre-wrap>checkmate </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.8.3 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.0) </span> </td><td><span style=white-space:pre-wrap>backports (&gt;= 1.1.0), utils </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>data.table (&gt;= 1.9.8), devtools, ggplot2, knitr, rmarkdown,\n",
"magrittr, microbenchmark, testthat (&gt;= 0.11.0), tibble </span></td><td>NA </td><td>BSD_3_clause + file LICENSE </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>chemometrics</th><td>chemometrics </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.4.2 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.10), rpart </span> </td><td><span style=white-space:pre-wrap>class, e1071, MASS, nnet, pcaPP, robustbase, som, lars, pls,\n",
"mclust </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>gclus </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 3) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>class</th><td><span style=white-space:pre-wrap>class </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>7.3-14 </td><td>recommended </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.0), stats, utils </span> </td><td><span style=white-space:pre-wrap>MASS </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL-2 | GPL-3 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>cluster</th><td><span style=white-space:pre-wrap>cluster </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>2.0.6 </td><td>recommended </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.1) </span> </td><td><span style=white-space:pre-wrap>graphics, grDevices, stats, utils </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>MASS </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>coda</th><td><span style=white-space:pre-wrap>coda </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>0.19-1 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.14.0) </span> </td><td><span style=white-space:pre-wrap>lattice </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>codetools</th><td><span style=white-space:pre-wrap>codetools </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>0.2-15 </td><td>recommended </td><td><span style=white-space:pre-wrap>R (&gt;= 2.1) </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>colorspace</th><td><span style=white-space:pre-wrap>colorspace </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.3-2 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.13.0), methods </span> </td><td><span style=white-space:pre-wrap>graphics, grDevices </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>datasets, stats, utils, KernSmooth, MASS, kernlab, mvtnorm,\n",
"vcd, dichromat, tcltk, shiny, shinyjs </span></td><td>NA </td><td>BSD_3_clause + file LICENSE </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>commonmark</th><td>commonmark </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.2 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>curl </td><td>NA </td><td>BSD_2_clause + file LICENSE </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>compiler</th><td>compiler </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.4.1 </td><td>base </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>Part of R 3.4.1 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>covr</th><td><span style=white-space:pre-wrap>covr </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.0.0 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.1.0), methods </span> </td><td><span style=white-space:pre-wrap>stats, utils, jsonlite, rex, httr, crayon, withr (&gt;= 1.0.2) </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R6, knitr, rmarkdown, shiny (&gt;= 0.11.1), htmltools,\n",
"htmlwidgets (&gt;= 0.7), DT (&gt;= 0.2), testthat, rstudioapi (&gt;=\n",
"0.2), devtools, xml2 (&gt;= 1.0.0), parallel, memoise </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL-3 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>coxme</th><td><span style=white-space:pre-wrap>coxme </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>2.2-5 </td><td><span style=white-space:pre-wrap>optional </span> </td><td><span style=white-space:pre-wrap>survival (&gt;= 2.36.14), methods, bdsmatrix(&gt;= 1.3) </span> </td><td><span style=white-space:pre-wrap>nlme, Matrix (&gt;= 1.0) </span> </td><td><span style=white-space:pre-wrap>bdsmatrix </span> </td><td><span style=white-space:pre-wrap>mvtnorm, kinship2 </span></td><td>NA </td><td><span style=white-space:pre-wrap>LGPL-2 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>crayon</th><td>crayon </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>1.3.2 </td><td>NA </td><td>NA </td><td>grDevices, methods, utils </td><td>NA </td><td>testthat </td><td>NA </td><td>MIT + file LICENSE </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>curl</th><td><span style=white-space:pre-wrap>curl </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>2.8.1 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.0) </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>testthat (&gt;= 1.0.0), knitr, jsonlite, rmarkdown, magrittr,\n",
"httpuv, webutils </span></td><td>NA </td><td><span style=white-space:pre-wrap>MIT + file LICENSE </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>⋮</th><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td><td>⋮</td></tr>\n",
"\t<tr><th scope=row>som</th><td><span style=white-space:pre-wrap>som </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>0.3-5.1 </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.10) </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 3) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>sourcetools</th><td><span style=white-space:pre-wrap>sourcetools </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>0.1.6 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.2) </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>testthat </span></td><td>NA </td><td><span style=white-space:pre-wrap>MIT + file LICENSE </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>sp</th><td><span style=white-space:pre-wrap>sp </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.2-5 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.0), methods </span> </td><td><span style=white-space:pre-wrap>utils, stats, graphics, grDevices, lattice, grid </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>RColorBrewer, rgdal (&gt;= 0.8-7), rgeos (&gt;= 0.3-13), gstat,\n",
"maptools, deldir </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>SparseM</th><td><span style=white-space:pre-wrap>SparseM </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.77 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.15), methods </span> </td><td><span style=white-space:pre-wrap>graphics, stats, utils </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>spatial</th><td><span style=white-space:pre-wrap>spatial </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>7.3-11 </td><td>recommended </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.0), graphics, stats, utils </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>MASS </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL-2 | GPL-3 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>splines</th><td>splines </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.4.1 </td><td>base </td><td>NA </td><td>graphics, stats </td><td>NA </td><td>Matrix, methods </td><td>NA </td><td>Part of R 3.4.1 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>statnet.common</th><td>statnet.common </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.3.0 </td><td>NA </td><td>NA </td><td>utils </td><td>NA </td><td>NA </td><td>NA </td><td>GPL-3 + file LICENSE </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>stats</th><td>stats </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.4.1 </td><td>base </td><td>NA </td><td>utils, grDevices, graphics </td><td>NA </td><td>MASS, Matrix, SuppDists, methods, stats4 </td><td>NA </td><td>Part of R 3.4.1 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>stats4</th><td>stats4 </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.4.1 </td><td>base </td><td>NA </td><td>graphics, methods, stats </td><td>NA </td><td>NA </td><td>NA </td><td>Part of R 3.4.1 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>stringi</th><td><span style=white-space:pre-wrap>stringi </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.1.5 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.14) </span> </td><td><span style=white-space:pre-wrap>tools, utils, stats </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>file LICENSE </span> </td><td>yes </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>stringr</th><td><span style=white-space:pre-wrap>stringr </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.2.0 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.14) </span> </td><td><span style=white-space:pre-wrap>stringi (&gt;= 0.4.1), magrittr </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>testthat, knitr, htmltools, htmlwidgets, rmarkdown, covr </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL-2 | file LICENSE </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>survey</th><td><span style=white-space:pre-wrap>survey </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.32-1 </td><td><span style=white-space:pre-wrap>NA </span> </td><td>R (&gt;= 2.16.0), grid, methods, Matrix, survival </td><td><span style=white-space:pre-wrap>stats, graphics, splines, lattice </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>foreign, MASS, KernSmooth, hexbin, mitools, RSQLite, RODBC,\n",
"quantreg, parallel, CompQuadForm, DBI </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL-2 | GPL-3 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>survival</th><td><span style=white-space:pre-wrap>survival </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>2.41-3 </td><td>recommended </td><td><span style=white-space:pre-wrap>R (&gt;= 2.13.0) </span> </td><td><span style=white-space:pre-wrap>graphics, Matrix, methods, splines, stats, utils </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>LGPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>svglite</th><td><span style=white-space:pre-wrap>svglite </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.2.0 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.0) </span> </td><td><span style=white-space:pre-wrap>Rcpp, gdtools (&gt;= 0.1.1) </span> </td><td><span style=white-space:pre-wrap>Rcpp, gdtools, BH </span> </td><td><span style=white-space:pre-wrap>htmltools, testthat, xml2 (&gt;= 1.0.0), covr, fontquiver (&gt;=\n",
"0.2.0), knitr, rmarkdown </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>tcltk</th><td>tcltk </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.4.1 </td><td>base </td><td>NA </td><td>utils </td><td>NA </td><td>NA </td><td>NA </td><td>Part of R 3.4.1 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>testthat</th><td><span style=white-space:pre-wrap>testthat </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.0.2 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.1.0) </span> </td><td><span style=white-space:pre-wrap>digest, crayon, praise, magrittr, R6, methods </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>devtools, withr, covr </span></td><td>NA </td><td><span style=white-space:pre-wrap>MIT + file LICENSE </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>TH.data</th><td><span style=white-space:pre-wrap>TH.data </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.0-8 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.10.0), survival, MASS </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>dplyr, gdata, plyr </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL-3 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>tibble</th><td><span style=white-space:pre-wrap>tibble </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.3.3 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.1.0) </span> </td><td><span style=white-space:pre-wrap>methods, rlang, Rcpp (&gt;= 0.12.3), utils </span> </td><td><span style=white-space:pre-wrap>Rcpp </span> </td><td><span style=white-space:pre-wrap>covr, dplyr, knitr (&gt;= 1.5.32), microbenchmark, nycflights13,\n",
"testthat, rmarkdown, withr </span></td><td>NA </td><td><span style=white-space:pre-wrap>MIT + file LICENSE </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>tidyr</th><td><span style=white-space:pre-wrap>tidyr </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>0.6.3 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.1.0) </span> </td><td>tibble, dplyr (&gt;= 0.4), stringi, lazyeval, magrittr, Rcpp </td><td><span style=white-space:pre-wrap>Rcpp </span> </td><td><span style=white-space:pre-wrap>knitr, testthat, covr, gapminder, rmarkdown </span></td><td>NA </td><td><span style=white-space:pre-wrap>MIT + file LICENSE </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>tools</th><td>tools </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.4.1 </td><td>base </td><td>NA </td><td>NA </td><td>NA </td><td>codetools, methods, xml2, curl </td><td>NA </td><td>Part of R 3.4.1 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>utils</th><td>utils </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>3.4.1 </td><td>base </td><td>NA </td><td>NA </td><td>NA </td><td>methods, XML </td><td>NA </td><td>Part of R 3.4.1 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>uuid</th><td><span style=white-space:pre-wrap>uuid </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>0.1-2 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.9.0) </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span></td><td>NA </td><td><span style=white-space:pre-wrap>MIT + file LICENSE </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>viridis</th><td><span style=white-space:pre-wrap>viridis </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>0.4.0 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.10), viridisLite (&gt;= 0.2.0) </span> </td><td><span style=white-space:pre-wrap>stats, ggplot2 (&gt;= 1.0.1), gridExtra </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td>hexbin (&gt;= 1.27.0), scales, MASS, knitr, dichromat,\n",
"colorspace, rasterVis, httr, mapproj, vdiffr, svglite (&gt;=\n",
"1.2.0), testthat, covr, rmarkdown</td><td>NA </td><td><span style=white-space:pre-wrap>MIT + file LICENSE </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>viridisLite</th><td><span style=white-space:pre-wrap>viridisLite </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>0.2.0 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.10) </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>hexbin (&gt;= 1.27.0), ggplot2 (&gt;= 1.0.1), testthat, covr </span></td><td>NA </td><td><span style=white-space:pre-wrap>MIT + file LICENSE </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>whisker</th><td>whisker </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>0.3-2 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>markdown </td><td>NA </td><td>GPL-3 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>withr</th><td><span style=white-space:pre-wrap>withr </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>2.0.0 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.0.2) </span> </td><td><span style=white-space:pre-wrap>stats, graphics </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>testthat </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.1 </td></tr>\n",
"\t<tr><th scope=row>xml2</th><td><span style=white-space:pre-wrap>xml2 </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.1.1 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 3.1.0) </span> </td><td><span style=white-space:pre-wrap>Rcpp </span> </td><td>Rcpp (&gt;= 0.11.4.6), BH </td><td><span style=white-space:pre-wrap>testthat, curl, covr, knitr, rmarkdown, magrittr, httr </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>xtable</th><td><span style=white-space:pre-wrap>xtable </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.8-2 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.10.0) </span> </td><td><span style=white-space:pre-wrap>stats, utils </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>knitr, lsmeans, spdep, splm, sphet, plm, zoo, survival </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL (&gt;= 2) </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>no </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>yaml</th><td>yaml </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td>2.1.14 </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>testthat </td><td>NA </td><td>BSD_3_clause + file LICENSE </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"\t<tr><th scope=row>zoo</th><td><span style=white-space:pre-wrap>zoo </span> </td><td>/Library/Frameworks/R.framework/Versions/3.4/Resources/library </td><td><span style=white-space:pre-wrap>1.8-0 </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>R (&gt;= 2.10.0), stats </span> </td><td><span style=white-space:pre-wrap>utils, graphics, grDevices, lattice (&gt;= 0.20-27) </span> </td><td><span style=white-space:pre-wrap>NA </span> </td><td><span style=white-space:pre-wrap>coda, chron, DAAG, fts, ggplot2, mondate, scales,\n",
"strucchange, timeDate, timeSeries, tis, tseries, xts </span></td><td>NA </td><td><span style=white-space:pre-wrap>GPL-2 | GPL-3 </span> </td><td>NA </td><td>NA </td><td>NA </td><td>NA </td><td>yes </td><td>3.4.0 </td></tr>\n",
"</tbody>\n",
"</table>\n"
],
"text/latex": [
"\\begin{tabular}{r|llllllllllllllll}\n",
" & Package & LibPath & Version & Priority & Depends & Imports & LinkingTo & Suggests & Enhances & License & License\\_is\\_FOSS & License\\_restricts\\_use & OS\\_type & MD5sum & NeedsCompilation & Built\\\\\n",
"\\hline\n",
"\tabind & abind & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.4-5 & NA & R (>= 1.5.0) & methods, utils & NA & NA & NA & LGPL (>= 2) & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tacepack & acepack & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.4.1 & NA & NA & NA & NA & testthat & NA & MIT + file LICENSE & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\talr4 & alr4 & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.0.5 & NA & R (>= 2.1.1), car, effects & NA & NA & NA & NA & GPL (>= 2) & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tarm & arm & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.9-3 & NA & R (>= 3.1.0), MASS, Matrix (>= 1.0), stats, lme4 (>= 1.0) & abind, coda, graphics, grDevices, methods, nlme, utils & NA & NA & NA & GPL (>= 3) & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tassertthat & assertthat & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.2.0 & NA & NA & tools & NA & testthat & NA & GPL-3 & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tbackports & backports & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.1.0 & NA & R (>= 3.0.0) & utils & NA & NA & NA & GPL-2 & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tbase & base & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.4.1 & base & NA & NA & NA & methods & NA & Part of R 3.4.1 & NA & NA & NA & NA & NA & 3.4.1 \\\\\n",
"\tbase64enc & base64enc & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.1-3 & NA & R (>= 2.9.0) & NA & NA & NA & png & GPL-2 \\textbar{} GPL-3 & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tbdsmatrix & bdsmatrix & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.3-2 & NA & methods, R (>= 2.0.0) & NA & NA & NA & NA & LGPL-2 & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tbindr & bindr & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.1 & NA & NA & NA & NA & testthat & NA & MIT + file LICENSE & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tbindrcpp & bindrcpp & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.2 & NA & NA & Rcpp, bindr & Rcpp, plogr & testthat & NA & MIT + file LICENSE & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tbitops & bitops & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.0-6 & NA & NA & NA & NA & NA & NA & GPL (>= 2) & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tboot & boot & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.3-20 & recommended & R (>= 3.0.0), graphics, stats & NA & NA & MASS, survival & NA & Unlimited & NA & NA & NA & NA & no & 3.4.1 \\\\\n",
"\tbrew & brew & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.0-6 & NA & NA & NA & NA & NA & NA & GPL-2 & NA & NA & NA & NA & NA & 3.4.0 \\\\\n",
"\tbroom & broom & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.4.2 & NA & NA & plyr, dplyr, tidyr, psych, stringr, reshape2, nlme, methods & NA & knitr, boot, survival, gam, glmnet, lfe, Lahman, MASS, sp,\n",
"maps, maptools, multcomp, testthat, lme4, zoo, lmtest, plm,\n",
"biglm, ggplot2, nnet, geepack, AUC, ergm, network,\n",
"statnet.common, xergm, btergm, binGroup, Hmisc, bbmle, gamlss,\n",
"rstan, rstanarm, brms, coda, gmm, Matrix, ks, purrr, orcutt,\n",
"mgcv, lmodel2, poLCA, mclust, covr, lsmeans, betareg, robust,\n",
"akima & NA & MIT + file LICENSE & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tcar & car & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 2.1-5 & NA & R (>= 3.2.0) & MASS, mgcv, nnet, pbkrtest (>= 0.4-4), quantreg, grDevices,\n",
"utils, stats, graphics & NA & alr4, boot, coxme, leaps, lme4, lmtest, Matrix, MatrixModels,\n",
"nlme, rgl (>= 0.93.960), sandwich, SparseM, survival, survey,\n",
"nloptr & NA & GPL (>= 2) & NA & NA & NA & NA & no & 3.4.1 \\\\\n",
"\tcaTools & caTools & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.17.1 & NA & R (>= 2.2.0) & bitops & NA & MASS, rpart & NA & GPL-3 & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tcheckmate & checkmate & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.8.3 & NA & R (>= 3.0.0) & backports (>= 1.1.0), utils & NA & data.table (>= 1.9.8), devtools, ggplot2, knitr, rmarkdown,\n",
"magrittr, microbenchmark, testthat (>= 0.11.0), tibble & NA & BSD\\_3\\_clause + file LICENSE & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tchemometrics & chemometrics & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.4.2 & NA & R (>= 2.10), rpart & class, e1071, MASS, nnet, pcaPP, robustbase, som, lars, pls,\n",
"mclust & NA & gclus & NA & GPL (>= 3) & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tclass & class & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 7.3-14 & recommended & R (>= 3.0.0), stats, utils & MASS & NA & NA & NA & GPL-2 \\textbar{} GPL-3 & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tcluster & cluster & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 2.0.6 & recommended & R (>= 3.0.1) & graphics, grDevices, stats, utils & NA & MASS & NA & GPL (>= 2) & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tcoda & coda & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.19-1 & NA & R (>= 2.14.0) & lattice & NA & NA & NA & GPL (>= 2) & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tcodetools & codetools & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.2-15 & recommended & R (>= 2.1) & NA & NA & NA & NA & GPL & NA & NA & NA & NA & no & 3.4.1 \\\\\n",
"\tcolorspace & colorspace & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.3-2 & NA & R (>= 2.13.0), methods & graphics, grDevices & NA & datasets, stats, utils, KernSmooth, MASS, kernlab, mvtnorm,\n",
"vcd, dichromat, tcltk, shiny, shinyjs & NA & BSD\\_3\\_clause + file LICENSE & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tcommonmark & commonmark & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.2 & NA & NA & NA & NA & curl & NA & BSD\\_2\\_clause + file LICENSE & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tcompiler & compiler & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.4.1 & base & NA & NA & NA & NA & NA & Part of R 3.4.1 & NA & NA & NA & NA & NA & 3.4.1 \\\\\n",
"\tcovr & covr & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.0.0 & NA & R (>= 3.1.0), methods & stats, utils, jsonlite, rex, httr, crayon, withr (>= 1.0.2) & NA & R6, knitr, rmarkdown, shiny (>= 0.11.1), htmltools,\n",
"htmlwidgets (>= 0.7), DT (>= 0.2), testthat, rstudioapi (>=\n",
"0.2), devtools, xml2 (>= 1.0.0), parallel, memoise & NA & GPL-3 & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tcoxme & coxme & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 2.2-5 & optional & survival (>= 2.36.14), methods, bdsmatrix(>= 1.3) & nlme, Matrix (>= 1.0) & bdsmatrix & mvtnorm, kinship2 & NA & LGPL-2 & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tcrayon & crayon & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.3.2 & NA & NA & grDevices, methods, utils & NA & testthat & NA & MIT + file LICENSE & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tcurl & curl & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 2.8.1 & NA & R (>= 3.0.0) & NA & NA & testthat (>= 1.0.0), knitr, jsonlite, rmarkdown, magrittr,\n",
"httpuv, webutils & NA & MIT + file LICENSE & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\t⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮ & ⋮\\\\\n",
"\tsom & som & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.3-5.1 & NA & R (>= 2.10) & NA & NA & NA & NA & GPL (>= 3) & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tsourcetools & sourcetools & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.1.6 & NA & R (>= 3.0.2) & NA & NA & testthat & NA & MIT + file LICENSE & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tsp & sp & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.2-5 & NA & R (>= 3.0.0), methods & utils, stats, graphics, grDevices, lattice, grid & NA & RColorBrewer, rgdal (>= 0.8-7), rgeos (>= 0.3-13), gstat,\n",
"maptools, deldir & NA & GPL (>= 2) & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tSparseM & SparseM & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.77 & NA & R (>= 2.15), methods & graphics, stats, utils & NA & NA & NA & GPL (>= 2) & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tspatial & spatial & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 7.3-11 & recommended & R (>= 3.0.0), graphics, stats, utils & NA & NA & MASS & NA & GPL-2 \\textbar{} GPL-3 & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tsplines & splines & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.4.1 & base & NA & graphics, stats & NA & Matrix, methods & NA & Part of R 3.4.1 & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tstatnet.common & statnet.common & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.3.0 & NA & NA & utils & NA & NA & NA & GPL-3 + file LICENSE & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tstats & stats & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.4.1 & base & NA & utils, grDevices, graphics & NA & MASS, Matrix, SuppDists, methods, stats4 & NA & Part of R 3.4.1 & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tstats4 & stats4 & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.4.1 & base & NA & graphics, methods, stats & NA & NA & NA & Part of R 3.4.1 & NA & NA & NA & NA & NA & 3.4.1 \\\\\n",
"\tstringi & stringi & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.1.5 & NA & R (>= 2.14) & tools, utils, stats & NA & NA & NA & file LICENSE & yes & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tstringr & stringr & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.2.0 & NA & R (>= 2.14) & stringi (>= 0.4.1), magrittr & NA & testthat, knitr, htmltools, htmlwidgets, rmarkdown, covr & NA & GPL-2 \\textbar{} file LICENSE & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tsurvey & survey & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.32-1 & NA & R (>= 2.16.0), grid, methods, Matrix, survival & stats, graphics, splines, lattice & NA & foreign, MASS, KernSmooth, hexbin, mitools, RSQLite, RODBC,\n",
"quantreg, parallel, CompQuadForm, DBI & NA & GPL-2 \\textbar{} GPL-3 & NA & NA & NA & NA & no & 3.4.1 \\\\\n",
"\tsurvival & survival & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 2.41-3 & recommended & R (>= 2.13.0) & graphics, Matrix, methods, splines, stats, utils & NA & NA & NA & LGPL (>= 2) & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tsvglite & svglite & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.2.0 & NA & R (>= 3.0.0) & Rcpp, gdtools (>= 0.1.1) & Rcpp, gdtools, BH & htmltools, testthat, xml2 (>= 1.0.0), covr, fontquiver (>=\n",
"0.2.0), knitr, rmarkdown & NA & GPL (>= 2) & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\ttcltk & tcltk & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.4.1 & base & NA & utils & NA & NA & NA & Part of R 3.4.1 & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\ttestthat & testthat & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.0.2 & NA & R (>= 3.1.0) & digest, crayon, praise, magrittr, R6, methods & NA & devtools, withr, covr & NA & MIT + file LICENSE & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tTH.data & TH.data & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.0-8 & NA & R (>= 2.10.0), survival, MASS & NA & NA & dplyr, gdata, plyr & NA & GPL-3 & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\ttibble & tibble & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.3.3 & NA & R (>= 3.1.0) & methods, rlang, Rcpp (>= 0.12.3), utils & Rcpp & covr, dplyr, knitr (>= 1.5.32), microbenchmark, nycflights13,\n",
"testthat, rmarkdown, withr & NA & MIT + file LICENSE & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\ttidyr & tidyr & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.6.3 & NA & R (>= 3.1.0) & tibble, dplyr (>= 0.4), stringi, lazyeval, magrittr, Rcpp & Rcpp & knitr, testthat, covr, gapminder, rmarkdown & NA & MIT + file LICENSE & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\ttools & tools & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.4.1 & base & NA & NA & NA & codetools, methods, xml2, curl & NA & Part of R 3.4.1 & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tutils & utils & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 3.4.1 & base & NA & NA & NA & methods, XML & NA & Part of R 3.4.1 & NA & NA & NA & NA & yes & 3.4.1 \\\\\n",
"\tuuid & uuid & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.1-2 & NA & R (>= 2.9.0) & NA & NA & NA & NA & MIT + file LICENSE & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tviridis & viridis & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.4.0 & NA & R (>= 2.10), viridisLite (>= 0.2.0) & stats, ggplot2 (>= 1.0.1), gridExtra & NA & hexbin (>= 1.27.0), scales, MASS, knitr, dichromat,\n",
"colorspace, rasterVis, httr, mapproj, vdiffr, svglite (>=\n",
"1.2.0), testthat, covr, rmarkdown & NA & MIT + file LICENSE & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tviridisLite & viridisLite & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.2.0 & NA & R (>= 2.10) & NA & NA & hexbin (>= 1.27.0), ggplot2 (>= 1.0.1), testthat, covr & NA & MIT + file LICENSE & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\twhisker & whisker & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 0.3-2 & NA & NA & NA & NA & markdown & NA & GPL-3 & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\twithr & withr & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 2.0.0 & NA & R (>= 3.0.2) & stats, graphics & NA & testthat & NA & GPL (>= 2) & NA & NA & NA & NA & no & 3.4.1 \\\\\n",
"\txml2 & xml2 & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.1.1 & NA & R (>= 3.1.0) & Rcpp & Rcpp (>= 0.11.4.6), BH & testthat, curl, covr, knitr, rmarkdown, magrittr, httr & NA & GPL (>= 2) & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\txtable & xtable & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.8-2 & NA & R (>= 2.10.0) & stats, utils & NA & knitr, lsmeans, spdep, splm, sphet, plm, zoo, survival & NA & GPL (>= 2) & NA & NA & NA & NA & no & 3.4.0 \\\\\n",
"\tyaml & yaml & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 2.1.14 & NA & NA & NA & NA & testthat & NA & BSD\\_3\\_clause + file LICENSE & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\tzoo & zoo & /Library/Frameworks/R.framework/Versions/3.4/Resources/library & 1.8-0 & NA & R (>= 2.10.0), stats & utils, graphics, grDevices, lattice (>= 0.20-27) & NA & coda, chron, DAAG, fts, ggplot2, mondate, scales,\n",
"strucchange, timeDate, timeSeries, tis, tseries, xts & NA & GPL-2 \\textbar{} GPL-3 & NA & NA & NA & NA & yes & 3.4.0 \\\\\n",
"\\end{tabular}\n"
],
"text/markdown": [
"\n",
"| <!--/--> | Package | LibPath | Version | Priority | Depends | Imports | LinkingTo | Suggests | Enhances | License | License_is_FOSS | License_restricts_use | OS_type | MD5sum | NeedsCompilation | Built | \n",
"|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
"| abind | abind | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.4-5 | NA | R (>= 1.5.0) | methods, utils | NA | NA | NA | LGPL (>= 2) | NA | NA | NA | NA | no | 3.4.0 | \n",
"| acepack | acepack | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.4.1 | NA | NA | NA | NA | testthat | NA | MIT + file LICENSE | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| alr4 | alr4 | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.0.5 | NA | R (>= 2.1.1), car, effects | NA | NA | NA | NA | GPL (>= 2) | NA | NA | NA | NA | no | 3.4.0 | \n",
"| arm | arm | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.9-3 | NA | R (>= 3.1.0), MASS, Matrix (>= 1.0), stats, lme4 (>= 1.0) | abind, coda, graphics, grDevices, methods, nlme, utils | NA | NA | NA | GPL (>= 3) | NA | NA | NA | NA | no | 3.4.0 | \n",
"| assertthat | assertthat | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.2.0 | NA | NA | tools | NA | testthat | NA | GPL-3 | NA | NA | NA | NA | no | 3.4.0 | \n",
"| backports | backports | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.1.0 | NA | R (>= 3.0.0) | utils | NA | NA | NA | GPL-2 | NA | NA | NA | NA | no | 3.4.0 | \n",
"| base | base | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.4.1 | base | NA | NA | NA | methods | NA | Part of R 3.4.1 | NA | NA | NA | NA | NA | 3.4.1 | \n",
"| base64enc | base64enc | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.1-3 | NA | R (>= 2.9.0) | NA | NA | NA | png | GPL-2 | GPL-3 | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| bdsmatrix | bdsmatrix | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.3-2 | NA | methods, R (>= 2.0.0) | NA | NA | NA | NA | LGPL-2 | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| bindr | bindr | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.1 | NA | NA | NA | NA | testthat | NA | MIT + file LICENSE | NA | NA | NA | NA | no | 3.4.0 | \n",
"| bindrcpp | bindrcpp | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.2 | NA | NA | Rcpp, bindr | Rcpp, plogr | testthat | NA | MIT + file LICENSE | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| bitops | bitops | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.0-6 | NA | NA | NA | NA | NA | NA | GPL (>= 2) | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| boot | boot | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.3-20 | recommended | R (>= 3.0.0), graphics, stats | NA | NA | MASS, survival | NA | Unlimited | NA | NA | NA | NA | no | 3.4.1 | \n",
"| brew | brew | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.0-6 | NA | NA | NA | NA | NA | NA | GPL-2 | NA | NA | NA | NA | NA | 3.4.0 | \n",
"| broom | broom | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.4.2 | NA | NA | plyr, dplyr, tidyr, psych, stringr, reshape2, nlme, methods | NA | knitr, boot, survival, gam, glmnet, lfe, Lahman, MASS, sp,\n",
"maps, maptools, multcomp, testthat, lme4, zoo, lmtest, plm,\n",
"biglm, ggplot2, nnet, geepack, AUC, ergm, network,\n",
"statnet.common, xergm, btergm, binGroup, Hmisc, bbmle, gamlss,\n",
"rstan, rstanarm, brms, coda, gmm, Matrix, ks, purrr, orcutt,\n",
"mgcv, lmodel2, poLCA, mclust, covr, lsmeans, betareg, robust,\n",
"akima | NA | MIT + file LICENSE | NA | NA | NA | NA | no | 3.4.0 | \n",
"| car | car | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 2.1-5 | NA | R (>= 3.2.0) | MASS, mgcv, nnet, pbkrtest (>= 0.4-4), quantreg, grDevices,\n",
"utils, stats, graphics | NA | alr4, boot, coxme, leaps, lme4, lmtest, Matrix, MatrixModels,\n",
"nlme, rgl (>= 0.93.960), sandwich, SparseM, survival, survey,\n",
"nloptr | NA | GPL (>= 2) | NA | NA | NA | NA | no | 3.4.1 | \n",
"| caTools | caTools | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.17.1 | NA | R (>= 2.2.0) | bitops | NA | MASS, rpart | NA | GPL-3 | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| checkmate | checkmate | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.8.3 | NA | R (>= 3.0.0) | backports (>= 1.1.0), utils | NA | data.table (>= 1.9.8), devtools, ggplot2, knitr, rmarkdown,\n",
"magrittr, microbenchmark, testthat (>= 0.11.0), tibble | NA | BSD_3_clause + file LICENSE | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| chemometrics | chemometrics | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.4.2 | NA | R (>= 2.10), rpart | class, e1071, MASS, nnet, pcaPP, robustbase, som, lars, pls,\n",
"mclust | NA | gclus | NA | GPL (>= 3) | NA | NA | NA | NA | no | 3.4.0 | \n",
"| class | class | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 7.3-14 | recommended | R (>= 3.0.0), stats, utils | MASS | NA | NA | NA | GPL-2 | GPL-3 | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| cluster | cluster | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 2.0.6 | recommended | R (>= 3.0.1) | graphics, grDevices, stats, utils | NA | MASS | NA | GPL (>= 2) | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| coda | coda | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.19-1 | NA | R (>= 2.14.0) | lattice | NA | NA | NA | GPL (>= 2) | NA | NA | NA | NA | no | 3.4.0 | \n",
"| codetools | codetools | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.2-15 | recommended | R (>= 2.1) | NA | NA | NA | NA | GPL | NA | NA | NA | NA | no | 3.4.1 | \n",
"| colorspace | colorspace | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.3-2 | NA | R (>= 2.13.0), methods | graphics, grDevices | NA | datasets, stats, utils, KernSmooth, MASS, kernlab, mvtnorm,\n",
"vcd, dichromat, tcltk, shiny, shinyjs | NA | BSD_3_clause + file LICENSE | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| commonmark | commonmark | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.2 | NA | NA | NA | NA | curl | NA | BSD_2_clause + file LICENSE | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| compiler | compiler | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.4.1 | base | NA | NA | NA | NA | NA | Part of R 3.4.1 | NA | NA | NA | NA | NA | 3.4.1 | \n",
"| covr | covr | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.0.0 | NA | R (>= 3.1.0), methods | stats, utils, jsonlite, rex, httr, crayon, withr (>= 1.0.2) | NA | R6, knitr, rmarkdown, shiny (>= 0.11.1), htmltools,\n",
"htmlwidgets (>= 0.7), DT (>= 0.2), testthat, rstudioapi (>=\n",
"0.2), devtools, xml2 (>= 1.0.0), parallel, memoise | NA | GPL-3 | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| coxme | coxme | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 2.2-5 | optional | survival (>= 2.36.14), methods, bdsmatrix(>= 1.3) | nlme, Matrix (>= 1.0) | bdsmatrix | mvtnorm, kinship2 | NA | LGPL-2 | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| crayon | crayon | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.3.2 | NA | NA | grDevices, methods, utils | NA | testthat | NA | MIT + file LICENSE | NA | NA | NA | NA | no | 3.4.0 | \n",
"| curl | curl | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 2.8.1 | NA | R (>= 3.0.0) | NA | NA | testthat (>= 1.0.0), knitr, jsonlite, rmarkdown, magrittr,\n",
"httpuv, webutils | NA | MIT + file LICENSE | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | \n",
"| som | som | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.3-5.1 | NA | R (>= 2.10) | NA | NA | NA | NA | GPL (>= 3) | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| sourcetools | sourcetools | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.1.6 | NA | R (>= 3.0.2) | NA | NA | testthat | NA | MIT + file LICENSE | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| sp | sp | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.2-5 | NA | R (>= 3.0.0), methods | utils, stats, graphics, grDevices, lattice, grid | NA | RColorBrewer, rgdal (>= 0.8-7), rgeos (>= 0.3-13), gstat,\n",
"maptools, deldir | NA | GPL (>= 2) | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| SparseM | SparseM | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.77 | NA | R (>= 2.15), methods | graphics, stats, utils | NA | NA | NA | GPL (>= 2) | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| spatial | spatial | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 7.3-11 | recommended | R (>= 3.0.0), graphics, stats, utils | NA | NA | MASS | NA | GPL-2 | GPL-3 | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| splines | splines | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.4.1 | base | NA | graphics, stats | NA | Matrix, methods | NA | Part of R 3.4.1 | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| statnet.common | statnet.common | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.3.0 | NA | NA | utils | NA | NA | NA | GPL-3 + file LICENSE | NA | NA | NA | NA | no | 3.4.0 | \n",
"| stats | stats | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.4.1 | base | NA | utils, grDevices, graphics | NA | MASS, Matrix, SuppDists, methods, stats4 | NA | Part of R 3.4.1 | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| stats4 | stats4 | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.4.1 | base | NA | graphics, methods, stats | NA | NA | NA | Part of R 3.4.1 | NA | NA | NA | NA | NA | 3.4.1 | \n",
"| stringi | stringi | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.1.5 | NA | R (>= 2.14) | tools, utils, stats | NA | NA | NA | file LICENSE | yes | NA | NA | NA | yes | 3.4.0 | \n",
"| stringr | stringr | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.2.0 | NA | R (>= 2.14) | stringi (>= 0.4.1), magrittr | NA | testthat, knitr, htmltools, htmlwidgets, rmarkdown, covr | NA | GPL-2 | file LICENSE | NA | NA | NA | NA | no | 3.4.0 | \n",
"| survey | survey | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.32-1 | NA | R (>= 2.16.0), grid, methods, Matrix, survival | stats, graphics, splines, lattice | NA | foreign, MASS, KernSmooth, hexbin, mitools, RSQLite, RODBC,\n",
"quantreg, parallel, CompQuadForm, DBI | NA | GPL-2 | GPL-3 | NA | NA | NA | NA | no | 3.4.1 | \n",
"| survival | survival | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 2.41-3 | recommended | R (>= 2.13.0) | graphics, Matrix, methods, splines, stats, utils | NA | NA | NA | LGPL (>= 2) | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| svglite | svglite | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.2.0 | NA | R (>= 3.0.0) | Rcpp, gdtools (>= 0.1.1) | Rcpp, gdtools, BH | htmltools, testthat, xml2 (>= 1.0.0), covr, fontquiver (>=\n",
"0.2.0), knitr, rmarkdown | NA | GPL (>= 2) | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| tcltk | tcltk | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.4.1 | base | NA | utils | NA | NA | NA | Part of R 3.4.1 | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| testthat | testthat | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.0.2 | NA | R (>= 3.1.0) | digest, crayon, praise, magrittr, R6, methods | NA | devtools, withr, covr | NA | MIT + file LICENSE | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| TH.data | TH.data | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.0-8 | NA | R (>= 2.10.0), survival, MASS | NA | NA | dplyr, gdata, plyr | NA | GPL-3 | NA | NA | NA | NA | no | 3.4.0 | \n",
"| tibble | tibble | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.3.3 | NA | R (>= 3.1.0) | methods, rlang, Rcpp (>= 0.12.3), utils | Rcpp | covr, dplyr, knitr (>= 1.5.32), microbenchmark, nycflights13,\n",
"testthat, rmarkdown, withr | NA | MIT + file LICENSE | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| tidyr | tidyr | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.6.3 | NA | R (>= 3.1.0) | tibble, dplyr (>= 0.4), stringi, lazyeval, magrittr, Rcpp | Rcpp | knitr, testthat, covr, gapminder, rmarkdown | NA | MIT + file LICENSE | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| tools | tools | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.4.1 | base | NA | NA | NA | codetools, methods, xml2, curl | NA | Part of R 3.4.1 | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| utils | utils | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 3.4.1 | base | NA | NA | NA | methods, XML | NA | Part of R 3.4.1 | NA | NA | NA | NA | yes | 3.4.1 | \n",
"| uuid | uuid | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.1-2 | NA | R (>= 2.9.0) | NA | NA | NA | NA | MIT + file LICENSE | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| viridis | viridis | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.4.0 | NA | R (>= 2.10), viridisLite (>= 0.2.0) | stats, ggplot2 (>= 1.0.1), gridExtra | NA | hexbin (>= 1.27.0), scales, MASS, knitr, dichromat,\n",
"colorspace, rasterVis, httr, mapproj, vdiffr, svglite (>=\n",
"1.2.0), testthat, covr, rmarkdown | NA | MIT + file LICENSE | NA | NA | NA | NA | no | 3.4.0 | \n",
"| viridisLite | viridisLite | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.2.0 | NA | R (>= 2.10) | NA | NA | hexbin (>= 1.27.0), ggplot2 (>= 1.0.1), testthat, covr | NA | MIT + file LICENSE | NA | NA | NA | NA | no | 3.4.0 | \n",
"| whisker | whisker | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 0.3-2 | NA | NA | NA | NA | markdown | NA | GPL-3 | NA | NA | NA | NA | no | 3.4.0 | \n",
"| withr | withr | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 2.0.0 | NA | R (>= 3.0.2) | stats, graphics | NA | testthat | NA | GPL (>= 2) | NA | NA | NA | NA | no | 3.4.1 | \n",
"| xml2 | xml2 | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.1.1 | NA | R (>= 3.1.0) | Rcpp | Rcpp (>= 0.11.4.6), BH | testthat, curl, covr, knitr, rmarkdown, magrittr, httr | NA | GPL (>= 2) | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| xtable | xtable | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.8-2 | NA | R (>= 2.10.0) | stats, utils | NA | knitr, lsmeans, spdep, splm, sphet, plm, zoo, survival | NA | GPL (>= 2) | NA | NA | NA | NA | no | 3.4.0 | \n",
"| yaml | yaml | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 2.1.14 | NA | NA | NA | NA | testthat | NA | BSD_3_clause + file LICENSE | NA | NA | NA | NA | yes | 3.4.0 | \n",
"| zoo | zoo | /Library/Frameworks/R.framework/Versions/3.4/Resources/library | 1.8-0 | NA | R (>= 2.10.0), stats | utils, graphics, grDevices, lattice (>= 0.20-27) | NA | coda, chron, DAAG, fts, ggplot2, mondate, scales,\n",
"strucchange, timeDate, timeSeries, tis, tseries, xts | NA | GPL-2 | GPL-3 | NA | NA | NA | NA | yes | 3.4.0 | \n",
"\n",
"\n"
],
"text/plain": [
" Package \n",
"abind abind \n",
"acepack acepack \n",
"alr4 alr4 \n",
"arm arm \n",
"assertthat assertthat \n",
"backports backports \n",
"base base \n",
"base64enc base64enc \n",
"bdsmatrix bdsmatrix \n",
"bindr bindr \n",
"bindrcpp bindrcpp \n",
"bitops bitops \n",
"boot boot \n",
"brew brew \n",
"broom broom \n",
"car car \n",
"caTools caTools \n",
"checkmate checkmate \n",
"chemometrics chemometrics \n",
"class class \n",
"cluster cluster \n",
"coda coda \n",
"codetools codetools \n",
"colorspace colorspace \n",
"commonmark commonmark \n",
"compiler compiler \n",
"covr covr \n",
"coxme coxme \n",
"crayon crayon \n",
"curl curl \n",
"⋮ ⋮ \n",
"som som \n",
"sourcetools sourcetools \n",
"sp sp \n",
"SparseM SparseM \n",
"spatial spatial \n",
"splines splines \n",
"statnet.common statnet.common\n",
"stats stats \n",
"stats4 stats4 \n",
"stringi stringi \n",
"stringr stringr \n",
"survey survey \n",
"survival survival \n",
"svglite svglite \n",
"tcltk tcltk \n",
"testthat testthat \n",
"TH.data TH.data \n",
"tibble tibble \n",
"tidyr tidyr \n",
"tools tools \n",
"utils utils \n",
"uuid uuid \n",
"viridis viridis \n",
"viridisLite viridisLite \n",
"whisker whisker \n",
"withr withr \n",
"xml2 xml2 \n",
"xtable xtable \n",
"yaml yaml \n",
"zoo zoo \n",
" LibPath \n",
"abind /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"acepack /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"alr4 /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"arm /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"assertthat /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"backports /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"base /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"base64enc /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"bdsmatrix /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"bindr /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"bindrcpp /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"bitops /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"boot /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"brew /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"broom /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"car /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"caTools /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"checkmate /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"chemometrics /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"class /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"cluster /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"coda /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"codetools /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"colorspace /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"commonmark /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"compiler /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"covr /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"coxme /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"crayon /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"curl /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"⋮ ⋮ \n",
"som /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"sourcetools /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"sp /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"SparseM /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"spatial /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"splines /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"statnet.common /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"stats /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"stats4 /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"stringi /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"stringr /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"survey /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"survival /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"svglite /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"tcltk /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"testthat /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"TH.data /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"tibble /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"tidyr /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"tools /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"utils /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"uuid /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"viridis /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"viridisLite /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"whisker /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"withr /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"xml2 /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"xtable /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"yaml /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
"zoo /Library/Frameworks/R.framework/Versions/3.4/Resources/library\n",
" Version Priority \n",
"abind 1.4-5 NA \n",
"acepack 1.4.1 NA \n",
"alr4 1.0.5 NA \n",
"arm 1.9-3 NA \n",
"assertthat 0.2.0 NA \n",
"backports 1.1.0 NA \n",
"base 3.4.1 base \n",
"base64enc 0.1-3 NA \n",
"bdsmatrix 1.3-2 NA \n",
"bindr 0.1 NA \n",
"bindrcpp 0.2 NA \n",
"bitops 1.0-6 NA \n",
"boot 1.3-20 recommended\n",
"brew 1.0-6 NA \n",
"broom 0.4.2 NA \n",
"car 2.1-5 NA \n",
"caTools 1.17.1 NA \n",
"checkmate 1.8.3 NA \n",
"chemometrics 1.4.2 NA \n",
"class 7.3-14 recommended\n",
"cluster 2.0.6 recommended\n",
"coda 0.19-1 NA \n",
"codetools 0.2-15 recommended\n",
"colorspace 1.3-2 NA \n",
"commonmark 1.2 NA \n",
"compiler 3.4.1 base \n",
"covr 3.0.0 NA \n",
"coxme 2.2-5 optional \n",
"crayon 1.3.2 NA \n",
"curl 2.8.1 NA \n",
"⋮ ⋮ ⋮ \n",
"som 0.3-5.1 NA \n",
"sourcetools 0.1.6 NA \n",
"sp 1.2-5 NA \n",
"SparseM 1.77 NA \n",
"spatial 7.3-11 recommended\n",
"splines 3.4.1 base \n",
"statnet.common 3.3.0 NA \n",
"stats 3.4.1 base \n",
"stats4 3.4.1 base \n",
"stringi 1.1.5 NA \n",
"stringr 1.2.0 NA \n",
"survey 3.32-1 NA \n",
"survival 2.41-3 recommended\n",
"svglite 1.2.0 NA \n",
"tcltk 3.4.1 base \n",
"testthat 1.0.2 NA \n",
"TH.data 1.0-8 NA \n",
"tibble 1.3.3 NA \n",
"tidyr 0.6.3 NA \n",
"tools 3.4.1 base \n",
"utils 3.4.1 base \n",
"uuid 0.1-2 NA \n",
"viridis 0.4.0 NA \n",
"viridisLite 0.2.0 NA \n",
"whisker 0.3-2 NA \n",
"withr 2.0.0 NA \n",
"xml2 1.1.1 NA \n",
"xtable 1.8-2 NA \n",
"yaml 2.1.14 NA \n",
"zoo 1.8-0 NA \n",
" Depends \n",
"abind R (>= 1.5.0) \n",
"acepack NA \n",
"alr4 R (>= 2.1.1), car, effects \n",
"arm R (>= 3.1.0), MASS, Matrix (>= 1.0), stats, lme4 (>= 1.0)\n",
"assertthat NA \n",
"backports R (>= 3.0.0) \n",
"base NA \n",
"base64enc R (>= 2.9.0) \n",
"bdsmatrix methods, R (>= 2.0.0) \n",
"bindr NA \n",
"bindrcpp NA \n",
"bitops NA \n",
"boot R (>= 3.0.0), graphics, stats \n",
"brew NA \n",
"broom NA \n",
"car R (>= 3.2.0) \n",
"caTools R (>= 2.2.0) \n",
"checkmate R (>= 3.0.0) \n",
"chemometrics R (>= 2.10), rpart \n",
"class R (>= 3.0.0), stats, utils \n",
"cluster R (>= 3.0.1) \n",
"coda R (>= 2.14.0) \n",
"codetools R (>= 2.1) \n",
"colorspace R (>= 2.13.0), methods \n",
"commonmark NA \n",
"compiler NA \n",
"covr R (>= 3.1.0), methods \n",
"coxme survival (>= 2.36.14), methods, bdsmatrix(>= 1.3) \n",
"crayon NA \n",
"curl R (>= 3.0.0) \n",
"⋮ ⋮ \n",
"som R (>= 2.10) \n",
"sourcetools R (>= 3.0.2) \n",
"sp R (>= 3.0.0), methods \n",
"SparseM R (>= 2.15), methods \n",
"spatial R (>= 3.0.0), graphics, stats, utils \n",
"splines NA \n",
"statnet.common NA \n",
"stats NA \n",
"stats4 NA \n",
"stringi R (>= 2.14) \n",
"stringr R (>= 2.14) \n",
"survey R (>= 2.16.0), grid, methods, Matrix, survival \n",
"survival R (>= 2.13.0) \n",
"svglite R (>= 3.0.0) \n",
"tcltk NA \n",
"testthat R (>= 3.1.0) \n",
"TH.data R (>= 2.10.0), survival, MASS \n",
"tibble R (>= 3.1.0) \n",
"tidyr R (>= 3.1.0) \n",
"tools NA \n",
"utils NA \n",
"uuid R (>= 2.9.0) \n",
"viridis R (>= 2.10), viridisLite (>= 0.2.0) \n",
"viridisLite R (>= 2.10) \n",
"whisker NA \n",
"withr R (>= 3.0.2) \n",
"xml2 R (>= 3.1.0) \n",
"xtable R (>= 2.10.0) \n",
"yaml NA \n",
"zoo R (>= 2.10.0), stats \n",
" Imports \n",
"abind methods, utils \n",
"acepack NA \n",
"alr4 NA \n",
"arm abind, coda, graphics, grDevices, methods, nlme, utils \n",
"assertthat tools \n",
"backports utils \n",
"base NA \n",
"base64enc NA \n",
"bdsmatrix NA \n",
"bindr NA \n",
"bindrcpp Rcpp, bindr \n",
"bitops NA \n",
"boot NA \n",
"brew NA \n",
"broom plyr, dplyr, tidyr, psych, stringr, reshape2, nlme, methods \n",
"car MASS, mgcv, nnet, pbkrtest (>= 0.4-4), quantreg, grDevices,\\nutils, stats, graphics\n",
"caTools bitops \n",
"checkmate backports (>= 1.1.0), utils \n",
"chemometrics class, e1071, MASS, nnet, pcaPP, robustbase, som, lars, pls,\\nmclust \n",
"class MASS \n",
"cluster graphics, grDevices, stats, utils \n",
"coda lattice \n",
"codetools NA \n",
"colorspace graphics, grDevices \n",
"commonmark NA \n",
"compiler NA \n",
"covr stats, utils, jsonlite, rex, httr, crayon, withr (>= 1.0.2) \n",
"coxme nlme, Matrix (>= 1.0) \n",
"crayon grDevices, methods, utils \n",
"curl NA \n",
"⋮ ⋮ \n",
"som NA \n",
"sourcetools NA \n",
"sp utils, stats, graphics, grDevices, lattice, grid \n",
"SparseM graphics, stats, utils \n",
"spatial NA \n",
"splines graphics, stats \n",
"statnet.common utils \n",
"stats utils, grDevices, graphics \n",
"stats4 graphics, methods, stats \n",
"stringi tools, utils, stats \n",
"stringr stringi (>= 0.4.1), magrittr \n",
"survey stats, graphics, splines, lattice \n",
"survival graphics, Matrix, methods, splines, stats, utils \n",
"svglite Rcpp, gdtools (>= 0.1.1) \n",
"tcltk utils \n",
"testthat digest, crayon, praise, magrittr, R6, methods \n",
"TH.data NA \n",
"tibble methods, rlang, Rcpp (>= 0.12.3), utils \n",
"tidyr tibble, dplyr (>= 0.4), stringi, lazyeval, magrittr, Rcpp \n",
"tools NA \n",
"utils NA \n",
"uuid NA \n",
"viridis stats, ggplot2 (>= 1.0.1), gridExtra \n",
"viridisLite NA \n",
"whisker NA \n",
"withr stats, graphics \n",
"xml2 Rcpp \n",
"xtable stats, utils \n",
"yaml NA \n",
"zoo utils, graphics, grDevices, lattice (>= 0.20-27) \n",
" LinkingTo \n",
"abind NA \n",
"acepack NA \n",
"alr4 NA \n",
"arm NA \n",
"assertthat NA \n",
"backports NA \n",
"base NA \n",
"base64enc NA \n",
"bdsmatrix NA \n",
"bindr NA \n",
"bindrcpp Rcpp, plogr \n",
"bitops NA \n",
"boot NA \n",
"brew NA \n",
"broom NA \n",
"car NA \n",
"caTools NA \n",
"checkmate NA \n",
"chemometrics NA \n",
"class NA \n",
"cluster NA \n",
"coda NA \n",
"codetools NA \n",
"colorspace NA \n",
"commonmark NA \n",
"compiler NA \n",
"covr NA \n",
"coxme bdsmatrix \n",
"crayon NA \n",
"curl NA \n",
"⋮ ⋮ \n",
"som NA \n",
"sourcetools NA \n",
"sp NA \n",
"SparseM NA \n",
"spatial NA \n",
"splines NA \n",
"statnet.common NA \n",
"stats NA \n",
"stats4 NA \n",
"stringi NA \n",
"stringr NA \n",
"survey NA \n",
"survival NA \n",
"svglite Rcpp, gdtools, BH \n",
"tcltk NA \n",
"testthat NA \n",
"TH.data NA \n",
"tibble Rcpp \n",
"tidyr Rcpp \n",
"tools NA \n",
"utils NA \n",
"uuid NA \n",
"viridis NA \n",
"viridisLite NA \n",
"whisker NA \n",
"withr NA \n",
"xml2 Rcpp (>= 0.11.4.6), BH\n",
"xtable NA \n",
"yaml NA \n",
"zoo NA \n",
" Suggests \n",
"abind NA \n",
"acepack testthat \n",
"alr4 NA \n",
"arm NA \n",
"assertthat testthat \n",
"backports NA \n",
"base methods \n",
"base64enc NA \n",
"bdsmatrix NA \n",
"bindr testthat \n",
"bindrcpp testthat \n",
"bitops NA \n",
"boot MASS, survival \n",
"brew NA \n",
"broom knitr, boot, survival, gam, glmnet, lfe, Lahman, MASS, sp,\\nmaps, maptools, multcomp, testthat, lme4, zoo, lmtest, plm,\\nbiglm, ggplot2, nnet, geepack, AUC, ergm, network,\\nstatnet.common, xergm, btergm, binGroup, Hmisc, bbmle, gamlss,\\nrstan, rstanarm, brms, coda, gmm, Matrix, ks, purrr, orcutt,\\nmgcv, lmodel2, poLCA, mclust, covr, lsmeans, betareg, robust,\\nakima\n",
"car alr4, boot, coxme, leaps, lme4, lmtest, Matrix, MatrixModels,\\nnlme, rgl (>= 0.93.960), sandwich, SparseM, survival, survey,\\nnloptr \n",
"caTools MASS, rpart \n",
"checkmate data.table (>= 1.9.8), devtools, ggplot2, knitr, rmarkdown,\\nmagrittr, microbenchmark, testthat (>= 0.11.0), tibble \n",
"chemometrics gclus \n",
"class NA \n",
"cluster MASS \n",
"coda NA \n",
"codetools NA \n",
"colorspace datasets, stats, utils, KernSmooth, MASS, kernlab, mvtnorm,\\nvcd, dichromat, tcltk, shiny, shinyjs \n",
"commonmark curl \n",
"compiler NA \n",
"covr R6, knitr, rmarkdown, shiny (>= 0.11.1), htmltools,\\nhtmlwidgets (>= 0.7), DT (>= 0.2), testthat, rstudioapi (>=\\n0.2), devtools, xml2 (>= 1.0.0), parallel, memoise \n",
"coxme mvtnorm, kinship2 \n",
"crayon testthat \n",
"curl testthat (>= 1.0.0), knitr, jsonlite, rmarkdown, magrittr,\\nhttpuv, webutils \n",
"⋮ ⋮ \n",
"som NA \n",
"sourcetools testthat \n",
"sp RColorBrewer, rgdal (>= 0.8-7), rgeos (>= 0.3-13), gstat,\\nmaptools, deldir \n",
"SparseM NA \n",
"spatial MASS \n",
"splines Matrix, methods \n",
"statnet.common NA \n",
"stats MASS, Matrix, SuppDists, methods, stats4 \n",
"stats4 NA \n",
"stringi NA \n",
"stringr testthat, knitr, htmltools, htmlwidgets, rmarkdown, covr \n",
"survey foreign, MASS, KernSmooth, hexbin, mitools, RSQLite, RODBC,\\nquantreg, parallel, CompQuadForm, DBI \n",
"survival NA \n",
"svglite htmltools, testthat, xml2 (>= 1.0.0), covr, fontquiver (>=\\n0.2.0), knitr, rmarkdown \n",
"tcltk NA \n",
"testthat devtools, withr, covr \n",
"TH.data dplyr, gdata, plyr \n",
"tibble covr, dplyr, knitr (>= 1.5.32), microbenchmark, nycflights13,\\ntestthat, rmarkdown, withr \n",
"tidyr knitr, testthat, covr, gapminder, rmarkdown \n",
"tools codetools, methods, xml2, curl \n",
"utils methods, XML \n",
"uuid NA \n",
"viridis hexbin (>= 1.27.0), scales, MASS, knitr, dichromat,\\ncolorspace, rasterVis, httr, mapproj, vdiffr, svglite (>=\\n1.2.0), testthat, covr, rmarkdown \n",
"viridisLite hexbin (>= 1.27.0), ggplot2 (>= 1.0.1), testthat, covr \n",
"whisker markdown \n",
"withr testthat \n",
"xml2 testthat, curl, covr, knitr, rmarkdown, magrittr, httr \n",
"xtable knitr, lsmeans, spdep, splm, sphet, plm, zoo, survival \n",
"yaml testthat \n",
"zoo coda, chron, DAAG, fts, ggplot2, mondate, scales,\\nstrucchange, timeDate, timeSeries, tis, tseries, xts \n",
" Enhances License License_is_FOSS\n",
"abind NA LGPL (>= 2) NA \n",
"acepack NA MIT + file LICENSE NA \n",
"alr4 NA GPL (>= 2) NA \n",
"arm NA GPL (>= 3) NA \n",
"assertthat NA GPL-3 NA \n",
"backports NA GPL-2 NA \n",
"base NA Part of R 3.4.1 NA \n",
"base64enc png GPL-2 | GPL-3 NA \n",
"bdsmatrix NA LGPL-2 NA \n",
"bindr NA MIT + file LICENSE NA \n",
"bindrcpp NA MIT + file LICENSE NA \n",
"bitops NA GPL (>= 2) NA \n",
"boot NA Unlimited NA \n",
"brew NA GPL-2 NA \n",
"broom NA MIT + file LICENSE NA \n",
"car NA GPL (>= 2) NA \n",
"caTools NA GPL-3 NA \n",
"checkmate NA BSD_3_clause + file LICENSE NA \n",
"chemometrics NA GPL (>= 3) NA \n",
"class NA GPL-2 | GPL-3 NA \n",
"cluster NA GPL (>= 2) NA \n",
"coda NA GPL (>= 2) NA \n",
"codetools NA GPL NA \n",
"colorspace NA BSD_3_clause + file LICENSE NA \n",
"commonmark NA BSD_2_clause + file LICENSE NA \n",
"compiler NA Part of R 3.4.1 NA \n",
"covr NA GPL-3 NA \n",
"coxme NA LGPL-2 NA \n",
"crayon NA MIT + file LICENSE NA \n",
"curl NA MIT + file LICENSE NA \n",
"⋮ ⋮ ⋮ ⋮ \n",
"som NA GPL (>= 3) NA \n",
"sourcetools NA MIT + file LICENSE NA \n",
"sp NA GPL (>= 2) NA \n",
"SparseM NA GPL (>= 2) NA \n",
"spatial NA GPL-2 | GPL-3 NA \n",
"splines NA Part of R 3.4.1 NA \n",
"statnet.common NA GPL-3 + file LICENSE NA \n",
"stats NA Part of R 3.4.1 NA \n",
"stats4 NA Part of R 3.4.1 NA \n",
"stringi NA file LICENSE yes \n",
"stringr NA GPL-2 | file LICENSE NA \n",
"survey NA GPL-2 | GPL-3 NA \n",
"survival NA LGPL (>= 2) NA \n",
"svglite NA GPL (>= 2) NA \n",
"tcltk NA Part of R 3.4.1 NA \n",
"testthat NA MIT + file LICENSE NA \n",
"TH.data NA GPL-3 NA \n",
"tibble NA MIT + file LICENSE NA \n",
"tidyr NA MIT + file LICENSE NA \n",
"tools NA Part of R 3.4.1 NA \n",
"utils NA Part of R 3.4.1 NA \n",
"uuid NA MIT + file LICENSE NA \n",
"viridis NA MIT + file LICENSE NA \n",
"viridisLite NA MIT + file LICENSE NA \n",
"whisker NA GPL-3 NA \n",
"withr NA GPL (>= 2) NA \n",
"xml2 NA GPL (>= 2) NA \n",
"xtable NA GPL (>= 2) NA \n",
"yaml NA BSD_3_clause + file LICENSE NA \n",
"zoo NA GPL-2 | GPL-3 NA \n",
" License_restricts_use OS_type MD5sum NeedsCompilation Built\n",
"abind NA NA NA no 3.4.0\n",
"acepack NA NA NA yes 3.4.0\n",
"alr4 NA NA NA no 3.4.0\n",
"arm NA NA NA no 3.4.0\n",
"assertthat NA NA NA no 3.4.0\n",
"backports NA NA NA no 3.4.0\n",
"base NA NA NA NA 3.4.1\n",
"base64enc NA NA NA yes 3.4.0\n",
"bdsmatrix NA NA NA yes 3.4.0\n",
"bindr NA NA NA no 3.4.0\n",
"bindrcpp NA NA NA yes 3.4.0\n",
"bitops NA NA NA yes 3.4.0\n",
"boot NA NA NA no 3.4.1\n",
"brew NA NA NA NA 3.4.0\n",
"broom NA NA NA no 3.4.0\n",
"car NA NA NA no 3.4.1\n",
"caTools NA NA NA yes 3.4.0\n",
"checkmate NA NA NA yes 3.4.1\n",
"chemometrics NA NA NA no 3.4.0\n",
"class NA NA NA yes 3.4.1\n",
"cluster NA NA NA yes 3.4.1\n",
"coda NA NA NA no 3.4.0\n",
"codetools NA NA NA no 3.4.1\n",
"colorspace NA NA NA yes 3.4.0\n",
"commonmark NA NA NA yes 3.4.0\n",
"compiler NA NA NA NA 3.4.1\n",
"covr NA NA NA yes 3.4.1\n",
"coxme NA NA NA yes 3.4.0\n",
"crayon NA NA NA no 3.4.0\n",
"curl NA NA NA yes 3.4.1\n",
"⋮ ⋮ ⋮ ⋮ ⋮ ⋮ \n",
"som NA NA NA yes 3.4.0\n",
"sourcetools NA NA NA yes 3.4.0\n",
"sp NA NA NA yes 3.4.1\n",
"SparseM NA NA NA yes 3.4.0\n",
"spatial NA NA NA yes 3.4.1\n",
"splines NA NA NA yes 3.4.1\n",
"statnet.common NA NA NA no 3.4.0\n",
"stats NA NA NA yes 3.4.1\n",
"stats4 NA NA NA NA 3.4.1\n",
"stringi NA NA NA yes 3.4.0\n",
"stringr NA NA NA no 3.4.0\n",
"survey NA NA NA no 3.4.1\n",
"survival NA NA NA yes 3.4.1\n",
"svglite NA NA NA yes 3.4.0\n",
"tcltk NA NA NA yes 3.4.1\n",
"testthat NA NA NA yes 3.4.0\n",
"TH.data NA NA NA no 3.4.0\n",
"tibble NA NA NA yes 3.4.0\n",
"tidyr NA NA NA yes 3.4.0\n",
"tools NA NA NA yes 3.4.1\n",
"utils NA NA NA yes 3.4.1\n",
"uuid NA NA NA yes 3.4.0\n",
"viridis NA NA NA no 3.4.0\n",
"viridisLite NA NA NA no 3.4.0\n",
"whisker NA NA NA no 3.4.0\n",
"withr NA NA NA no 3.4.1\n",
"xml2 NA NA NA yes 3.4.0\n",
"xtable NA NA NA no 3.4.0\n",
"yaml NA NA NA yes 3.4.0\n",
"zoo NA NA NA yes 3.4.0"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Look at packages currently installed\n",
"installed.packages()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"And to install packages (when using R on your own machine), is simply"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"ename": "ERROR",
"evalue": "Error in install.packages(): no packages were specified\n",
"output_type": "error",
"traceback": [
"Error in install.packages(): no packages were specified\nTraceback:\n",
"1. install.packages()",
"2. stop(\"no packages were specified\")"
]
}
],
"source": [
"# Install new packages\n",
"install.packages()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"With a provided list of package names in the parentheses.\n",
"\n",
"You must install a package before you can load it into the R environment using require() or library()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"# *Style*\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Good code is elegant.** If you remember one programming axiom through this course, let this be it. However like any style, getting there is not easy. People that dress well know how to do it because they have spent hundreds of hours trying things out and failing. Simplicity and clarity should be your aspirational goals for how your code looks initially; only later, with experience, will you have the wisdom to try daring or wild things out. \n",
"\n",
"Why is this important? Beacause well-styled code makes it quick and easy for others - **or more importantly, your future self** - to understand what is going on. Trust me. You will very quickly have no idea what you programed even two weeks ago and if you don't have clean, well documented code (which is easy to do on the fly), you'll want to whip yourself later.\n",
"\n",
"So what should our R coding style be? Based on [Google's R Style Guide](https://google.github.io/styleguide/Rguide.xml) of course! Here you'll find guidelines that will help make your code more readable and I encourage you to follow them closely to learn a few things about what makes for clean code. An example:\n",
"\n",
"**Spacing**\n",
"\n",
"Place spaces around all binary operators (=, +, -, <-, etc.). \n",
"*Exception: Spaces around ='s are optional when passing parameters in a function call.*\n",
"\n",
"Do not place a space before a comma, but always place one after a comma. \n",
"\n",
"GOOD:\n",
"\n",
" tab.prior <- table(df[df$days.from.opt < 0, \"campaign.id\"])\n",
" total <- sum(x[, 1])\n",
" total <- sum(x[1, ])\n",
"\n",
"BAD:\n",
"\n",
" tab.prior <- table(df[df$days.from.opt<0, \"campaign.id\"]) # Needs spaces around '<'\n",
" tab.prior <- table(df[df$days.from.opt < 0,\"campaign.id\"]) # Needs a space after the comma\n",
" tab.prior<- table(df[df$days.from.opt < 0, \"campaign.id\"]) # Needs a space before <-\n",
" tab.prior<-table(df[df$days.from.opt < 0, \"campaign.id\"]) # Needs spaces around <-\n",
" total <- sum(x[,1]) # Needs a space after the comma\n",
" total <- sum(x[ ,1]) # Needs a space after the comma, not before\n",
"\n",
"\n",
"The one recommendation I would make against Google's recommendations is to use underscores ('\\_') rather than periods ('.') for spacing in names (i.e. use my\\_variable rather than my.variable). This is because R is the only language around that lets you use peroids in this way and developing universal methods is better than language-specific ones.\n",
"\n",
"Documenting code is equally important to style, for the obvious 'need to speak to future ignorant self' reasons. In R (and many other languages) we can use a hashtag to add a comment that does not affect how the code runs.\n",
"\n",
"Ultimately, how your code looks is up to you, but there will be a style grading portion of your assignments (20\\%!) and if things do not look clean, these marks will be lost forever. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"# Boolean logic\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"Among the most fundamental pieces of coding knowledge is the ability to effectively deploy [Boolean logic](https://en.wikipedia.org/wiki/Boolean_algebra) to select and summarize data, as well as to direct traffic through functions. Boolean programming formally describes logical relationships using three basic operations: **AND, OR, and NOT**. Given that computers are based on sets of 1's and 0's, these three simple buliding blocks are the basis of a huge amount of what we can do on a computer.\n",
"\n",
"In R, these basis operations are "
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"x = 2"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# AND\n",
"x>1 & x<5"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# OR\n",
"x<0 | x>1"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# NOT\n",
"x != 3"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Boolean indexing\n",
"\n",
"One of the most common things to do with boolean operations is indexing - selecting elements from a list given a set of criteria that must all be true in order to be selected. So if we randomly generate some normally-distributed data:"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Create object 'xdata' that contains 1000 values drawn from a N(0,1) (standard normal) distribution\n",
"xdata = rnorm(1000)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\nh5AKREh6CKlAhKSHkApESHoIqUCEpIeQCkRIegipQISkh5AKREh6CKlAhKSHkApESHoIqUCE\npIeQCkRIegipQISkh5AKREh6CKlAhKSHkApESHoIqUCEpIeQCkRIegipQISkh5AKREh6CKlA\nhKSHkApESHoIqUCEpIeQCkRIegipQISkh5AKREh6CKlAhKSHkApESHoIqUCEpIeQCkRIegip\nQISkh5AKREh6CKlAhKSHkApESHoIqUCEpIeQCkRIegipQISkh5AKREh6CKlAhKSHkApESHoI\nqUCEpIeQCkRIegipQISkh5AKREh6CKlAhKSHkApESHoIqUCEpIeQCkRIegipQISkh5AKREh6\nCKlAhKSHkApESHoIqUCEpIeQCkRIegipQISkh5AKREh6CKlAhKSHkApESHoIqUCEpIeQCkRI\negipQISkh5AKREh6CKlAhKSHkApESHoIqUCEpIeQCkRIegipQISkh5AKREh6CKlAhKSHkApE\nSHoIqUCEpIeQCkRIegipQISkh5AKREh6CKlAhKSHkApESHoIqUCEpIeQCkRIegipQISkh5AK\nREh6CKlAhKSHkApESHrcQ3rV2BMGISl61yMSG2VASHoIqUCEpIeQCkRIegipQISkh5AKREh6\nCKlAhKSHkApESHoIqUCEpIeQCkRIegipQISkh5AKREh6CKlAhKSHkApESHG878ImJCGEFEc9\nEDbKYPzF229W3f8+V+v9VIeojHogbJTB2It3Wjx8KbKc5BDVUQ+EjTIYe/HWqfk8dG8dd01a\nT3GI6qgHwkYZjL14TTrc3z6kZopDVEc9EDbKYOzFGzy19Px5Jvanpx4IG2XAI1Ic9UDYKAPD\n90i7Y/cW3yO9Sj0QNspg9MVbPjxrtzhNcojaqAfCRhkYXkdad68jNasNryO9Rj0QNsqAOxvi\nqAfCRhkQUhz1QNgoA+PF2y5SWu0mPUQ91ANhowxsryP1zzg8fdKO/blRD4SNMjCFtE7r0/l8\nXKftFIeojnogbJSBKaQmdc97n9JiikNURz0QNsrAFNLt1qCftwjx00J+oR4IG2VgCunjFhK3\nCL1CPRA2ymB8SKvNdpc+L2+e1twi9BL1QNgog/Eh3b9sS6nhFqFXqAfCRhmMvniHw3a7WnVP\nOayfdsT+3KgHwkYZcGdDHPVA2CgDQoqjHggbZUBIcdQDYaMMCCmOeiBslAEhxVEPhI0ysD79\n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\n",
"text/plain": [
"Plot with title \"Histogram of xdata\""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Plot a histogram of the data\n",
"hist(xdata)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now we can use boolean indexing to select only values, say, greater than zero"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAMAAADKOT/pAAAAMFBMVEUAAABNTU1oaGh8fHyM\njIyampqnp6eysrK9vb3Hx8fQ0NDZ2dnh4eHp6enw8PD////QFLu4AAAACXBIWXMAABJ0AAAS\ndAHeZh94AAAba0lEQVR4nO3d7UKiQBgFYFBT19Tu/25X0ExNi/BlHIbn+bG5kmfI5oR8lNUH\n8LTq1SsAJVAkCKBIEECRIIAiQQBFggCKBAEUCQIoEgRQJAigSBBAkSCAIkEARYIAigQBFAkC\nKBIEUCQIoEgQQJEggCJBAEWCAIoEARQJAigSBFAkCKBIEECRIIAiQQBFggCKBAEUCQIoEgRQ\nJAigSBBAkSCAIkEARYIAigQBFAkCKBIEUKR7qqq6vvV1x6W3JCuzqqvql5E6r17VejblR/tl\nXdXL/W+DlWYqX+ffdCrSe53kyVs1s7FHke6u3p+L9Ocvcle3Q9Q7RaJbkRJNkllVbX/7nM6r\n9+ci/fBFzjf37p0dh6hmisT3Iv38SYnW5W+f86hIASmfi+r1/vbO98O924/tYbP0/ut4RZnK\n1/k3j7ZI+9X8cGvx7+Pzx+3x0zZvzauvzx/Qu8P/5uuLR+5m1fJw69+i+UG93H3mrWfV7DDb\n1nU1f78e/irvai7uDqO3N+bHmbp7q6vZeayLIS5W73bc51POK1ZVy5ut5bKqmmfnX9V+yYo0\ncQ+KdHr9f+jJ1Rybn24fJ+f76VO+HjlrH/D5We3UPX3CoWTL831nl3mXfW2sq2r10c7Xt+9j\nXQzx9bjbcQNSjnbL9umYXb3CWxxfiH5WVZGm7UGR3toft/vDpFpfzLHF5xw7zp36/N/PR1bN\nww5zd75v5+5FPw6vgy47eHSVd1ukZkZvmh/49fexLoc43/tt3ICUs3/tHlG9+nqF9znA1fM2\nBVP5Ov+munS64/hv89Jm3+5Kf06SzeHjYV9h3xxd27QvaurmQ/31yGYKNjvhu6ukw73r5gf6\ntv3wNfZN3u1c3DW7Jqctw2mszWmsb0N8PLrzyZQL2+V10RWJCw+K1Ey1867Q5yR5a7ZPjeML\npcVx+jfT8/ORm5vo47/vVx++PuEm79tcXLcr1R4P/xxrc/051525f+dTKVe2M0X6UKT7HhRp\ndbzj1KWvRcdXNrv2jvpz6twuPnzCv+W8upqf96bbTd73udhM3Prj6nHnG9+HeHTnMykXtm+2\nSK2pfJ1/8/X9v54Qy1O3mtON3+dKe+t2Wp7//+/zDMvvRbq69W0uNnVeXX/q6ca9Ie7f+VzK\n2WkfaW0fSZHuelSkj/2/4+Gr+dWi8xakvrtFav/bvNSbva23f9oi1bcLm1VoXmDW+6vHHW/c\nHeLunU+mHJ0OOM5vj9o1P2S2jtrx8UORGu1Znq/7Fr/uI7VLZ6f7fy3S4pd9pONBvau9m9NY\nd4e4e+eTKeenxnmks6l8nX/zoEiz08bia1Oxf3jUrropyenj71ukX47atZcOnC4cWF8fIfw+\nxP7BuE+mfD41d65s2LiygS8PinSYJfNdu3vR/LhtJl7z8Xyu8vgD/vt5pDZo3n7y5nq23t2T\nuMm7mYt1c8ZzczwAfzPW9RCn1bs77pMpp/X87Vq77ytfsKl8nX/z6KXd58GGZhepOU59vPE5\n84+XaG9On3JTktPlA9XxZ/VPRbrJu164Or7wWx2PFJxCF8fPuR7itHp3x30y5ScXV39//8oK\nNpWv828eFem4fzQ/7sM0Oxen7rzVFyeYmiPCh5/WtyVp7q7ftrvPCxbupH+6yrtaeL5K7rRT\nf31d39UQn6t3Z9xnU3709ftId76yck3l60xu/3maJiupJ7Yi0VN1PGy1nf/+s/sFFGkoU/k6\nk/k6VFDd3Rl/rfMhheIGe7WpfJ3JnH/V4ngiJTOKNJSpfJ3p7FfN4a/6LcPtkSINZypfJwxK\nkSCAIkEARYIAigQBFAkCKBIEUCQIoEgQQJEggCJBAEWCAIoEARQJAigSBFAkCKBIEECRIIAi\nQQBFggCKBAEUCQIoEgRQJAigSBBAkSCAIkEARYIAigQBFAkCKBIEUCQIoEgQQJEggCJBAEWC\nAIoEARQJAigSBFAkCKBIEECRIIAiQQBFggCKBAEUCQIoEgRQJAigSBBAkSCAIkEARYIAigQB\nFAkCKBIEUCQIoEgQ4JVFqqK98Gth4l5apMzzoDNFggCKBAEUCQIoEgRQJAigSBBAkSCAIkEA\nRYIAigQBFAkCKBIEUCQIoEgQQJEggCJBAEWCAIoEARQJAigSBFAkCKBIEECRIIAiQQBFggCK\nBAEUCQIoEgRQJAigSBBAkSCAIkEARYIAigQBFAkCKBIEUCQIoEgQQJEggCJBAEWCAIoEARQJ\nAigSBFAkCKBIEECRIIAiQQBFggCKBAEUCQIoEgRQJAigSBBAkSCAIkEARYIAigQBFAkCKBIE\nUCQIoEgQQJEggCJBAEWCAIoEARQJAigSBFAkCKBIEECRIIAiQQBFggCKBAEUCQIoEgRQJAig\nSBBAkSCAIkEARYIAigQBFAkCKBIEUCQIoEgQQJEggCJBgKKKFC14/ShYUUXKPI+CKVK6PAqm\nSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqU\nLo+CKVK6PAqmSOnyKJgipcujYIqULo+C9Z8s76tF+2uki+V78rHHmUfB+k6W/eziV7Lnacce\nax4F6ztZllX9b9ve2m3qapl07LHmUbC+k6Wutufb26pOOvZY8yhY38ly9Sd2ev69ndwnviLR\nmS1SujwK9sQ+0mbX3rKPBP0ny/ziqN1sn3bskeZRsCfOIy3b80j1YuU8EpPnyoZ0eRRMkdLl\nUbAnJ8t6VlWLzWvGHl0eBXvuPNLpiEO/g3bZT3xForOnirSslvuPj92yWicde6x5FOypItVV\ne9x7X82Sjj3WPAr2VJE+Lw36folQp/fryn3iKxKdPVWkt88i/XiJkCJRvv5FWqzWm+rf4eZ+\n+fPRBkWifP2LdH7ZVlX1j5cIKRLl6z1Zttv1erFoDzksf77UTpEoX4LJokiUT5HS5VEwRUqX\nR8EUKV0eBVOkdHkU7NnD379cvPDjELlPfEWis76TZa1I8KX/eaS6699XVSTK13+ybLv+GpIi\nUb4nJsv64k/b9Roi94mvSHTmqF26PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcuj\nYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqm\nSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqU\nLo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOny\nKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+C\nKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgi\npcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6\nPAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcuj\nYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqm\nSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqULo+CKVK6PAqmSOnyKJgipcujYIqU\nLo+CKVK6PAp2OVlmq93QQ3RbED1QJnkU7HKyVFU1RJcUifJdTpb9v7chuqRIlO92sryvZtFd\nUiTKd2eybOvDdmk96BC/LIgeKJM8CvZ9smzmVWM+4BC/LYgeKJM8CnYzWfarw+Zottkf2rQY\naIgOC6IHyiSPgl1NlvfmYMNye1wQNo0UifJdnUc6bIzW+88F9RBDdFsQPVAmeRTs6jzSYjP0\nEN0WRA+USR4FuzqPNPwQ3RZED5RJHgW7miz7ZfN6rl7GNkqRKN/lZNnV7RGGqqpDr21QJMp3\nOVnm1VuzLdov4w593w7RbUH0QJnkUbDri1Zvb4QP0W1B9ECZ5FGwy8lSV8edo70iDZJHwS4n\ny7Kavx8+vM+r5VBDdFsQPVAmeRTsarIcr7KLvM7u2xCdFkQPlEkeBbueLP8WTY0Cr/z+PkSX\nBdEDZZJHwfpPlvfVot18LZbvPYfIfeIrEp31nSz7WfXl55eCikT5+k6WZVX/O14mvtvUPx+c\nUCTKdzVZVufNzK+Pq6vt+fb25yvFFYnyXU6W1deLtd8fd/dM7q9DdFvQU+55FOz6hGz343W2\nSHCh+4bl2mEfaXO8tNU+ElxNlkX1h9+fmF8ctZv9+DhFonzXv0Yx/+WU0KX3ZXseqV6snEdi\n8q5f2nU/2NBziG4LogfKJI+CKVK6PArmEqF0eRTMJULp8ijY9WTZLJpXdYsOf7LBJUJw4fvv\nIx3u6/DHT5yQhQuXk2VdzdvfMl9Xb78/7uczuVXV4chF7hNfkejs9m82nP4g16+Ps0WCC7cb\nlq5FcokQXLicLLPTFmlbzX5/oEuE4MudfaRNt6vAXSIEZ1eTZeGvCA2ZR8G+n0eqFv+GHKLL\nguiBMsmjYAkmiyJRPkVKl0fBFCldHgXr+2sU1bWuQ3Rb0FPueRSsb5HWigRf7kyW93mX9xnb\n1l0PkisS5bs3WfYdLlptrn/o+OYvikT57k6Wbr9qvr64bvXPQ/y4oKfc8yjYvcmy/vlq7ogh\nfl4QPVAmeRTs/sGG1VBDdFsQPVAmeRTsXpFmse80pkiUzwnZdHkUTJHS5VGwBydkI/9IpCJR\nPkVKl0fBribLqt4c/n3vfM1CjyE6LYgeKJM8CnY5WVanM6zbqss1Qr2G6LYgeqBM8ijY7V8R\nur4RPkS3BdEDZZJHwS4nS33eInX4K0L9hui2IHqgTPIo2OVkaf5W3eFDx78i1GuIbguiB8ok\nj4JdTZbPv1XX8bLuPkN0WhA9UCZ5FOx6svxr/4rQZsghuiyIHiiTPArmyoZ0eRRMkdLlUbDr\nydL9jcZ6D9FlQfRAmeRRsO8HGz46vdFY3yE6LYgeKJM8CnY5Wf7yRmM9h+i2IHqgTPIo2PUJ\n2e5vNNZziG4LogfKJI+C3V4ipEjD5VGwy8nypzca6zdEtwXRA2WSR8Hu7CO5RGigPAp2NVm8\n0digeRTs+3kkbzQ2VB4Fc2VDujwKdjlZFrFXfd8botuC6IEyyaNgd39Ddrghui2IHqhvXrTg\n9SMjt4e/Bx6i24LogQrNIyOX39z9Yv4+8BDdFkQPVGgeGbl+aTfIixBFGiiPjCjSePPIiMPf\n480jI4o03jwy8vnNHfDYrCINlEdGros0SJ0UaaA8MqJI480jI4o03jwyokjjzSMjijTePDKi\nSOPNIyNfRRrsOmVFGiiPjCjSePPIiCsbxptHRhRpvHlkRJHGm0dGFGm8eWREkcabR0YUabx5\nZESRxptHRhRpvHlkRJHGm0dGFGm8eWREkcabR0YUabx5ZESRxptHRhRpvHlkRJHGm0dGFGm8\neWREkcabR0YUabx5ZESRxptHRhRpvHlkRJHGm0dGFGm8eWREkcabR0YUabx5ZESRxptHRhRp\nvHlkRJHGm0dGFGm8eWREkcabR0YUabx5ZESRxptHRhRpvHlkRJHGm0dGFGm8eWREkcabR0YU\nabx5ZESRxptHRhRpvHlkRJHGm0dGFGm8eWREkcabR0YUabx5ZESRxptHRhRpvHlkRJHGm0dG\nFGm8eWREkcabR0YUabx5ZESRxptHRhRpvHlkRJHGm0dGFGm8eWREkcabR0YUabx5ZESRxptH\nRhRpvHlkRJHGm0dGFGm8eWREkcabR0YUabx5ZESRxptHRhRpvHlkRJHGm0dGFGm8eWREkcab\nR0YUabx5ZESRxptHRhRpvHlkRJHGm0dGFGm8eWREkcabR0YUabx5ZESRxptHRhRpvHlkRJHG\nm0dGFGm8eWREkcabR0YUabx5ZESRxptHRhRpvHlkRJHGm0dGFGm8eWSk/zf3fbWoGovle88h\ncp+oueeRkb7f3P2s+jLvN0TuEzX3PDLS95u7rOp/2/bWblNXy15D5D5Rc88jI32/uXW1Pd/e\nVnWvIXKfqLnnkZG+39yqevSf7kPkPlFzzyMjtkjjzSMjT+wjbXbtLftIr8ojI72/ufOLo3az\nfa8hcp+oueeRkSfOIy3b80j1YuU80mvyyIgrG8abR0YG+uZWl1KNnX1etOD14wlPfjPWs6pa\nbHoOkf3En1geT3juPNLpiMOPB+0UaSx5POGpIi2r5f7jY7es1r2GyH1iTS2PJzxVpLpqj3vv\nq1mvIXKfWFPL4wlPFelzd9clQkXk8YSnivT2WSSXCJWQxxP6F2mxWm+qf4eb+6VLhIrI4wn9\ni3Q+lVFVtUuESsjjCb2/Gdvter1YtIcclj/2SJHGkscTXCIkjwCKJI8AiiSPAIokjwCKJI8A\niiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIok\njwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8A\niiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIok\njwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8A\niiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIok\njwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8AiiSPAIokjwCKJI8A\niiSPAIokjwCKJI8AijTivGjB6zcpiiRvqLxJUSR5Q+VNiiLJGypvUhRJ3lB5k6JI8obKmxRF\nkjdU3qQokryh8iZFkeQNlTcpiiRvqLxJUSR5Q+VNiiLJGypvUhRJ3lB5k6JI8obKmxRFkjdU\n3qQokryh8iZFkeQNlTcpiiRvqLxJUSR5Q+VNiiLJGypvUhRJ3lB5k6JI8obKmxRFkjdU3qQo\nkryh8iZFkeQNlTcpiiRvqLxJUSR5Q+VNiiLJGypvUhRJ3lB5k6JI8obKmxRFkjdU3qQokryh\n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\nAEWCAIoEAf4D212IntGqJ6oAAAAASUVORK5CYII=",
"text/plain": [
"Plot with title \"Histogram of xdata[xdata > 0]\""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Plot a histogram of the positive data\n",
"hist(xdata[xdata>0])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Keep in mind that boolean indexing applies not just to numbers but also to text"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"FALSE"
],
"text/latex": [
"FALSE"
],
"text/markdown": [
"FALSE"
],
"text/plain": [
"[1] FALSE"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# String example\n",
"'Simple' == 'Easy'"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can also use indexing to refer to the position of a value within a vector or dataframe. Vectors have 1 dimension, so they need 1 number to specify a position. Matrices or dataframes will need 2. "
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"0.741999207387319"
],
"text/latex": [
"0.741999207387319"
],
"text/markdown": [
"0.741999207387319"
],
"text/plain": [
"[1] 0.7419992"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"#return 7th value in xdata vector\n",
"xdata[7]"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<strong>zdata:</strong> 0.502803058520368"
],
"text/latex": [
"\\textbf{zdata:} 0.502803058520368"
],
"text/markdown": [
"**zdata:** 0.502803058520368"
],
"text/plain": [
" zdata \n",
"0.5028031 "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"#make a dataframe, then return value in 5th row and 3rd column\n",
"ydata = rnorm(1000)\n",
"zdata = rnorm(1000)\n",
"df = cbind(xdata, ydata, zdata)\n",
"df[5, 3]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can also refer to a range of values"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<ol class=list-inline>\n",
"\t<li>0.575584105317839</li>\n",
"\t<li>0.85212089867094</li>\n",
"\t<li>1.01116874914695</li>\n",
"\t<li>2.18212090584761</li>\n",
"\t<li>-0.0324461520203016</li>\n",
"\t<li>-0.656247484942807</li>\n",
"</ol>\n"
],
"text/latex": [
"\\begin{enumerate*}\n",
"\\item 0.575584105317839\n",
"\\item 0.85212089867094\n",
"\\item 1.01116874914695\n",
"\\item 2.18212090584761\n",
"\\item -0.0324461520203016\n",
"\\item -0.656247484942807\n",
"\\end{enumerate*}\n"
],
"text/markdown": [
"1. 0.575584105317839\n",
"2. 0.85212089867094\n",
"3. 1.01116874914695\n",
"4. 2.18212090584761\n",
"5. -0.0324461520203016\n",
"6. -0.656247484942807\n",
"\n",
"\n"
],
"text/plain": [
"[1] 0.57558411 0.85212090 1.01116875 2.18212091 -0.03244615 -0.65624748"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df[5:10, 2]"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"---\n",
"### TASK 1\n",
"---\n",
"Using the boolean operators above, select temperatures greater than 25C that are from Miami in April. Note the `c()` operator here is the code used in R to create an array, a fancy list with special properties to make it fast for calculations"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"set.seed(1327)\n",
"nreps = 99\n",
"Temperature = c(rnorm(nreps,24,1),rnorm(nreps,26,1),rnorm(nreps,30,1))\n",
"City = rep(c('Miami','Orlando','Key West'),nreps)\n",
"Month = c(rep('April',nreps),rep('May',nreps),rep('June',nreps))"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# YOUR CODE HERE\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"tmp = Temperature[City=='Miami'&Month=='April']\n",
"sum(tmp[tmp>25])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Key logical operators of importance for R are:\n",
"\n",
"| Operator | Description\n",
"| ------------- |:-------------:|\n",
"| < | less than |\n",
"| <= | less than or equal to |\n",
"| > | greater than |\n",
"| >= | greater than or equal to |\n",
"| == | exactly equal to |\n",
"| != | NOT equal to |\n",
"| !x | NOT x |\n",
"| x &#x7c; y | x OR y |\n",
"| x&y | x AND y |\n",
"| isTRUE(x) | test if X is TRUE |\n",
"\n",
"and you will use these all the time in writing R code."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"# Functions\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In any programming language functions are the workhorses objects for getting things done. Simply put, functions are bits of code that take inputs and produce an output. In their most simple form, functions in R are assigned objects and look something like:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Inverse-logit link\n",
"invlogit = function(x){exp(x)/(exp(x)+1)}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Where the ``function()`` statement creates a specific R function object, that takes in arguments within the parentheses and applies the calculation within the curly braces. This super-useful function takes numbers on the real line (between -$\\infty$ and +$\\infty$) and squases them between 0 and 1, converting numbers into probabilities. \n",
"\n",
"We apply the function a couple of ways; the first is to pass things directly:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Transform temperatures using invlogit function\n",
"temps = Temperature-mean(Temperature)\n",
"xnew = invlogit(temps)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"plot(temps, xnew)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The other way is to use R's ``apply()`` function and its derivatives ``lapply()`` and ``tapply()``, which help speed up iterative tasks (more on those below). A use of ``apply()`` to calculate the column averages of some fake data:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"## Compute row and column sums for a matrix:\n",
"x <- cbind(x1 = 3, x2 = c(4:1, 2:5))\n",
"dimnames(x)[[1]] <- letters[1:8]\n",
"x"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Column means\n",
"apply(x, 2, mean)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here the data are given first, then the dimension of interest (1=rows, 2=columns), and finally the function we want. To look at the row sums we would do:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Row sums\n",
"apply(x, 1, sum)"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"---\n",
"### TASK 2\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"Using an `apply()` function of your choice, calculate the average temperature for each city in the Florida data, using a single line. Use the help popup for `lapply()` to figure out which function to use (look at the options under 'See Also'). "
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# YOUR CODE HERE\n",
"?lapply\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# ANSWER\n",
"tmp = tapply(Temperature, City, mean)\n",
"tmp"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Test\n",
"round(as.numeric(c(tmp))[1],2)==26.63"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"---\n",
"# Loops\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"Among the most tricky things to think about and do well in a programming context is to iterate over a set of data to accomplish a task. Iterating is something to **avoid** if at all possible (it is slow) but is inevitible in some circumastances, particularly when the value from the previous step needs using in the next. These kinds of iterative tasks are typically accomplished through the use of loops, bits of code that keep going until they're done.\n",
"\n",
"'Done' in a loop is typically defined using either a **FOR** or **WHILE** statement, which are so common that they are often called 'for loops' and 'while loops'.\n",
"\n",
"For loops iterate over elements in a list or using a integer to index a list. So equivalently we can write:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Iterative for loop\n",
"for (c in City[1:10]){print(c)}"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Indexed for loop\n",
"for (i in 1:10){print(City[i])}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Typically the first approach is cleaner in not adding in the indexing variable ``i``, however in many instances you will be indexing multiple things at the same position, making the latter approach more common in practice. \n",
"\n",
"While loops on the other hand keep going until some condition breaks (which means they can continue indefinately if you're not careful!). An example would be:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# While loop\n",
"counter = 1\n",
"while (counter < 11){\n",
" print(City[counter])\n",
" counter=counter+1}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"A useful thing to do when coding a loop (and many other programming tasks) is to pre-specify the shape of the object you're going to store it in. This creates the instance of the object at a fixed dimension and place in memory so that it doesn't need to be re-created each time you add new information to the loop."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#Example of loop\n",
"start_time <- Sys.time()\n",
"\n",
"# Empty list object\n",
"out1 = {}\n",
"\n",
"for (i in 1:length(City)){\n",
" if (City[i]=='Miami'){\n",
" append(out1, Temperature[i])\n",
" }\n",
"}\n",
"\n",
"end_time <- Sys.time()\n",
"tmp1 = end_time - start_time"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#Example of loop with pre-defined vector\n",
"\n",
"start_time <- Sys.time()\n",
"\n",
"# Empty list object\n",
"out2 = vector(length=sum(City=='Miami'))\n",
"\n",
"for (i in 1:length(City)){\n",
" if (City[i]=='Miami'){\n",
" out2[i] = Temperature[i]\n",
" }\n",
"}\n",
"\n",
"end_time <- Sys.time()\n",
"tmp2 = end_time - start_time"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Percentage speed increase using pre-defined vector\n",
"1-tmp2[[1]]/tmp1[[1]]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For more complex loops and bigger data this becomes even more important."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"### TASK 3\n",
"---\n",
"\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"As for Task 2, calculate the average temperature for each city in the Florida data, using a single looping statement. Create an empty vector first to store averages for each of the three cities."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# YOUR CODE HERE\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# ANSWER\n",
"tmp = c(0,0,0)\n",
"for (i in 1:3){tmp[i] = mean(Temperature[City==unique(City)[i]])}\n",
"tmp"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"# AVOID LOOPING"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Loops are really important aspects of programming, however they should also be avoided at all costs:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"start_time <- Sys.time()\n",
"\n",
"out3 = Temperature[City=='Miami']\n",
"\n",
"end_time <- Sys.time()\n",
"tmp3 = end_time - start_time"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Percentage speed increase using indexing\n",
"1-tmp3[[1]]/tmp2[[1]]"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"By using vector indexing the speed has increased by 70% over the fastest loop - a big difference when using big data (hello geneticists)."
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"---\n",
"### TASK 4\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Use an index vector, combined with some boolean logic, to pull out the coefficient of variation in temperatures for cities that are not Orlando, in a single line."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# YOUR CODE HERE\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# ANSWER\n",
"sd(Temperature[City!='Orlando'])/mean(Temperature[City!='Orlando'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Importing data\n",
"\n",
"Often you will not generate data inside the R environment, but will have data living in an excel spreadsheet that you want to manipulate in R. In order to import your dataset, you have to first save it in the right format (so R can read it) and in the right place (so R knows where to find it). \n",
"\n",
"The working directory is the folder that R is currently looking at, and can access files from."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#what is my working directory right now?\n",
"getwd()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#what files are in my working directory?\n",
"list.files()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Change the working directory to a folder of your choice using setwd(). Rememember to use only / and not \\ (...more on that later)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"setwd(\"C:/Example/Your_Folder_Address_Here\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"There are 2 commonly used commands to move data in and out of the R environment. read.csv() will import excel files from your wd into R. write.csv() will export datasets from R into an excel csv format file in your wd. \n",
"\n",
"Don't try to import excel workbooks, it won't work! Save your dataset as a csv or txt file first. "
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#save an external dataset into an R object\n",
"my_dataframe <- read.csv(\"dataset.csv\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#export a csv file into your working directory\n",
"write.csv(my_dataframe, \"dataset.csv\")"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"# Dataframes\n",
"\n",
"Dataframes are the workhorse data structures in R, and are a feature of R that has been subsequently replicated and [improved upon](https://pandas.pydata.org) in other programming languages such as [Python](https://www.python.org). What makes them great? They are an excellent default way to store most kinds of data, as a flat (2-dimensional) file where each row is a unique observation and each column represents attributes (factors) that relate to those observations. If the order of the columns and rows can be re-arranged without a loss of information, you're likely looking at a dataframe. \n",
"\n",
"Let's start by importing an important dataset, a summary of the 2017 MLB baseball season from [Baseball-Reference.com](https://www.baseball-reference.com/leagues/MLB/2017-standard-batting.shtml):"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Create new dataframe from baseball data\n",
"mlbdata <- na.omit(read.csv(\"mlb2017_batting.txt\"))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here we've imported the 2017 batting data into a dataframe object called `mlbdata` (and have removed missing rows by wrapping in the `na.omit()` function). Looking at the top of the file"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"head(mlbdata)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we can see a bunch of rows and columns, but too many to fully make sense of. This is because there are a lot of rows and columns:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"dim(mlbdata)"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"Another way to make sense of a new dataframe is to look at a list of the column names"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"names(mlbdata)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Which, if you follow baseball makes complete sense. If not (poor you) you'll need a bit of decoding information:\n",
"\n",
"- **Rk** -- Rank; This is a count of the rows from top to bottom. It is recalculated following the sorting of a column.\n",
"- **Name** -- Player Name; Bold can mean player is active for this team or player has appeared in MLB; * means LHP or LHB, # means switch hitter,+ can mean HOFer\n",
"- **Age** -- Player’s age at midnight of June 30th of that year\n",
"- **Lg** -- League; AL - American League (1901-present); NL - National League (1876-present); AA - American Association (1882-1891); UA - Union Association (1884); PL - Players League (1890); FL - Federal League (1914-1915); NA - National Association (1871-1875)\n",
"- **G** -- Games Played; This includes all times that the player appeared on the lineup card. Pitchers in non-DH games that appeared on the lineup card but didn't bat will still have a game in this column.\n",
"- **PA** -- Plate Appearances; When available, we use actual plate appearances from play-by-play game accounts; Otherwise estimated using AB + BB + HBP + SF + SH, which excludes catcher interferences. When this color click for a summary of each PA.\n",
"- **AB** -- At Bats\n",
"- **R** -- Runs Scored/Allowed\n",
"- **H** -- Hits/Hits Allowed\n",
"- **2B** -- Doubles Hit/Allowed\n",
"- **3B** -- Triples Hit/Allowed\n",
"- **HR** -- Home Runs Hit/Allowed\n",
"- **RBI** -- Runs Batted In\n",
"- **SB** -- Stolen Bases\n",
"- **CS** -- Caught Stealing\n",
"- **BB** -- Bases on Balls/Walks\n",
"- **SO** -- Strikeouts\n",
"- **BA** -- Hits/At Bats; For recent years, leaders need 3.1 PA per team game played; Bold indicates highest BA using current stats; Gold means awarded title at end of year.\n",
"- **OBP** -- (H + BB + HBP)/(At Bats + BB + HBP + SF)\n",
"For recent years, leaders need 3.1 PA\n",
"per team game played\n",
"- **SLG** -- Total Bases/At Bats or \n",
"(1B + 2*2B + 3*3B + 4*HR)/AB\n",
"For recent years, leaders need 3.1 PA\n",
"per team game played\n",
"- **OPS** -- On-Base + Slugging Percentages \n",
"For recent years, leaders need 3.1 PA\n",
"per team game played\n",
"OPS+ -- OPS+\n",
"100*[OBP/lg OBP + SLG/lg SLG - 1]\n",
"Adjusted to the player’s ballpark(s)\n",
"- **TB** -- Total Bases\n",
"Singles + 2 x Doubles + 3 x Triples + 4 x Home Runs.\n",
"- **GDP** -- Double Plays Grounded Into\n",
"Only includes standard 6-4-3, 4-3, etc. double plays.\n",
"First tracked in 1933.\n",
"For gamelogs only in seasons we have play-by-play, we include triple plays as well.\n",
"All official seasonal totals do not include GITP's.\n",
"- **HBP** -- Times Hit by a Pitch.\n",
"- **SH** -- Sacrifice Hits (Sacrifice Bunts)\n",
"- **SF** -- Sacrifice Flies\n",
"First tracked in 1954.\n",
"- **IBB** -- Intentional Bases on Balls\n",
"First tracked in 1955.\n",
"- **Pos Summary** -- Positions Played\n",
"The positions either followed by the games played at that position\n",
"or in order of games or innings played.\n",
"For a single season, * indicates they played at least 2/3rds of the team games there\n",
"Positions after / indicate less than ten games played at those positions.\n",
"For career, a + sign means more than 300 games at that position and\n",
"a - sign means less than 30 games.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So what the heck can we do with dataframes? Well, we can use 'em to figure things out. Let's start by looking at who did well offensively in 2017, which is most frequently measured by batting average (`BA`), the individual column of which can be acessed using a `$` in conjunction with the name of the dataframe:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"hist(mlbdata$BA,breaks=100)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Given these are the proportion of times each player got a hit when at bat in the 2017 season, we can see there are some zeros (pitchers mostly) and some extreme values (1). To investigate what these are we can use our indexing skills to find out who those perfect hitters are:"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table>\n",
"<thead><tr><th></th><th scope=col>Rk</th><th scope=col>Name</th><th scope=col>Age</th><th scope=col>Tm</th><th scope=col>Lg</th><th scope=col>G</th><th scope=col>PA</th><th scope=col>AB</th><th scope=col>R</th><th scope=col>H</th><th scope=col>X2B</th><th scope=col>X3B</th><th scope=col>HR</th><th scope=col>RBI</th><th scope=col>SB</th><th scope=col>CS</th><th scope=col>BB</th><th scope=col>SO</th><th scope=col>BA</th><th scope=col>OBP</th></tr></thead>\n",
"<tbody>\n",
"\t<tr><th scope=row>14</th><td> 14 </td><td>Andrew Albers\\alberan01 </td><td>31 </td><td>SEA </td><td>AL </td><td> 1 </td><td>3 </td><td>1 </td><td>0 </td><td>1 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td></tr>\n",
"\t<tr><th scope=row>127</th><td> 127 </td><td>Aaron Blair\\blairaa01 </td><td>25 </td><td>ATL </td><td>NL </td><td> 1 </td><td>2 </td><td>1 </td><td>0 </td><td>1 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>0 </td><td>1 </td><td>1 </td></tr>\n",
"\t<tr><th scope=row>296</th><td> 296 </td><td>Chase d'Arnaud\\darnach01 </td><td>30 </td><td>BOS </td><td>AL </td><td> 2 </td><td>1 </td><td>1 </td><td>2 </td><td>1 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td></tr>\n",
"\t<tr><th scope=row>486</th><td> 486 </td><td>Sean Gilmartin*\\gilmase01</td><td>27 </td><td>NYM </td><td>NL </td><td> 2 </td><td>1 </td><td>1 </td><td>1 </td><td>1 </td><td>1 </td><td>0 </td><td>0 </td><td>1 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td></tr>\n",
"\t<tr><th scope=row>503</th><td> 503 </td><td>Marco Gonzales*\\gonzama02</td><td>25 </td><td>STL </td><td>NL </td><td> 1 </td><td>1 </td><td>1 </td><td>0 </td><td>1 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td></tr>\n",
"\t<tr><th scope=row>621</th><td> 621 </td><td>Derek Holland#\\hollade01 </td><td>30 </td><td>CHW </td><td>AL </td><td> 1 </td><td>1 </td><td>1 </td><td>0 </td><td>1 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td></tr>\n",
"\t<tr><th scope=row>641</th><td> 641 </td><td>Raisel Iglesias\\iglesra01</td><td>27 </td><td>CIN </td><td>NL </td><td>60 </td><td>1 </td><td>1 </td><td>0 </td><td>1 </td><td>1 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td></tr>\n",
"\t<tr><th scope=row>718</th><td> 718 </td><td>Erik Kratz\\kratzer01 </td><td>37 </td><td>NYY </td><td>AL </td><td> 4 </td><td>2 </td><td>2 </td><td>0 </td><td>2 </td><td>1 </td><td>0 </td><td>0 </td><td>2 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td></tr>\n",
"\t<tr><th scope=row>1042</th><td>1042 </td><td>David Price*\\priceda01 </td><td>31 </td><td>BOS </td><td>AL </td><td> 1 </td><td>1 </td><td>1 </td><td>0 </td><td>1 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td></tr>\n",
"\t<tr><th scope=row>1321</th><td>1321 </td><td>Jose Torres*\\torrejo02 </td><td>23 </td><td>SDP </td><td>NL </td><td>57 </td><td>1 </td><td>1 </td><td>1 </td><td>1 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td></tr>\n",
"</tbody>\n",
"</table>\n"
],
"text/latex": [
"\\begin{tabular}{r|llllllllllllllllllll}\n",
" & Rk & Name & Age & Tm & Lg & G & PA & AB & R & H & X2B & X3B & HR & RBI & SB & CS & BB & SO & BA & OBP\\\\\n",
"\\hline\n",
"\t14 & 14 & Andrew Albers\\textbackslash{}alberan01 & 31 & SEA & AL & 1 & 3 & 1 & 0 & 1 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 1 \\\\\n",
"\t127 & 127 & Aaron Blair\\textbackslash{}blairaa01 & 25 & ATL & NL & 1 & 2 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 1 & 1 \\\\\n",
"\t296 & 296 & Chase d'Arnaud\\textbackslash{}darnach01 & 30 & BOS & AL & 2 & 1 & 1 & 2 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 \\\\\n",
"\t486 & 486 & Sean Gilmartin*\\textbackslash{}gilmase01 & 27 & NYM & NL & 2 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 1 \\\\\n",
"\t503 & 503 & Marco Gonzales*\\textbackslash{}gonzama02 & 25 & STL & NL & 1 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 \\\\\n",
"\t621 & 621 & Derek Holland\\#\\textbackslash{}hollade01 & 30 & CHW & AL & 1 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 \\\\\n",
"\t641 & 641 & Raisel Iglesias\\textbackslash{}iglesra01 & 27 & CIN & NL & 60 & 1 & 1 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 \\\\\n",
"\t718 & 718 & Erik Kratz\\textbackslash{}kratzer01 & 37 & NYY & AL & 4 & 2 & 2 & 0 & 2 & 1 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 1 & 1 \\\\\n",
"\t1042 & 1042 & David Price*\\textbackslash{}priceda01 & 31 & BOS & AL & 1 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 \\\\\n",
"\t1321 & 1321 & Jose Torres*\\textbackslash{}torrejo02 & 23 & SDP & NL & 57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment