├── .github └── workflows │ └── build-readme.yml ├── .gitignore ├── .gitmodules ├── README.Rmd ├── README.md ├── docker ├── Dockerfile ├── Makefile └── print_warning.sh ├── happy_scientist ├── README.md └── seminars │ ├── .DS_Store │ ├── 2016-01_github │ ├── .DS_Store │ ├── README.md │ ├── flyer.pdf │ ├── material │ │ ├── .DS_Store │ │ └── slides.pptx │ └── slides.pdf │ ├── 2016-02_github │ ├── .DS_Store │ ├── README.md │ ├── flyer.pdf │ ├── material │ │ ├── .DS_Store │ │ └── Happy Scientist 2.pptx │ └── slides.pdf │ ├── 2016-03_r-package │ ├── .DS_Store │ ├── README.md │ └── flyer.pdf │ ├── 2017-04_r-package │ ├── .DS_Store │ ├── README.md │ ├── flyer.pdf │ ├── material │ │ ├── .DS_Store │ │ ├── efficiency.png │ │ ├── funnypkg │ │ │ ├── .Rbuildignore │ │ │ ├── ChangeLog │ │ │ ├── DESCRIPTION │ │ │ ├── LICENSE │ │ │ ├── NAMESPACE │ │ │ ├── NEWS.md │ │ │ ├── R │ │ │ │ ├── addup.r │ │ │ │ └── funnypkg-pkg.r │ │ │ ├── README.Rmd │ │ │ ├── README.md │ │ │ ├── codecov.yml │ │ │ ├── man │ │ │ │ ├── addnums.Rd │ │ │ │ └── funnypkg.Rd │ │ │ └── tests │ │ │ │ ├── testthat.R │ │ │ │ └── testthat │ │ │ │ └── test-addnums.r │ │ ├── ggvy_style.css │ │ ├── red_pequena.png │ │ └── rpkgs.rmd │ ├── slides.html │ └── slides.pdf │ ├── 2017-05_high-performance │ ├── .DS_Store │ ├── README.md │ ├── flyer.pdf │ ├── material │ │ ├── .DS_Store │ │ ├── cpuvsgpu.jpg │ │ ├── dist.cpp │ │ ├── flynnsTaxonomy.gif │ │ ├── presentation.html │ │ ├── presentation.md │ │ ├── presentation.rmd │ │ ├── simpi.cpp │ │ └── when_to_parallel.svg │ └── slides.html │ ├── 2018-01_high-performance │ ├── .DS_Store │ ├── README.md │ ├── flyer.pdf │ ├── material │ │ ├── .gitignore │ │ ├── cpuvsgpu.jpg │ │ ├── dist.cpp │ │ ├── fib-solution.R │ │ ├── fib.R │ │ ├── flynnsTaxonomy.gif │ │ ├── presentation.html │ │ ├── presentation.md │ │ ├── presentation.pdf │ │ ├── presentation.rmd │ │ ├── presentation_files │ │ │ └── figure-slidy │ │ │ │ └── unnamed-chunk-4-1.jpeg │ │ ├── random-mvn-solution.R │ │ ├── random-mvn.R │ │ ├── rslurm.R │ │ ├── scale-solution.cpp │ │ ├── scale.cpp │ │ ├── simpi.cpp │ │ ├── ulysses.txt │ │ ├── when_to_parallel.svg │ │ └── wordcount.R │ ├── slides.html │ └── slides.pdf │ ├── 2018-02_intro-tidyverse │ ├── .DS_Store │ ├── README.md │ ├── flyer.pdf │ └── material │ │ └── HappyScientist 2018 #2.pages │ ├── 2018-03_intro-tidyverse │ ├── .DS_Store │ ├── README.md │ ├── flyer.pdf │ └── material │ │ └── .DS_Store │ ├── 2019-01_rstudio-and-r │ ├── .DS_Store │ ├── README.md │ ├── Slides.html │ ├── flyer.pdf │ ├── material │ │ ├── .DS_Store │ │ ├── .Rbuildignore │ │ ├── .gitignore │ │ ├── 2019-01_happy-scientist-flyer.pages │ │ ├── 2019-01_happy-scientist-flyer.pdf │ │ ├── README.Rmd │ │ ├── README.md │ │ ├── Slides.Rmd │ │ ├── Slides.html │ │ ├── Slides_files │ │ │ └── figure-html │ │ │ │ ├── unnamed-chunk-2-1.png │ │ │ │ ├── unnamed-chunk-2-2.png │ │ │ │ ├── unnamed-chunk-2-3.png │ │ │ │ ├── unnamed-chunk-2-4.png │ │ │ │ ├── unnamed-chunk-3-1.png │ │ │ │ ├── unnamed-chunk-3-2.png │ │ │ │ ├── unnamed-chunk-3-3.png │ │ │ │ ├── unnamed-chunk-3-4.png │ │ │ │ ├── unnamed-chunk-4-1.png │ │ │ │ ├── unnamed-chunk-4-2.png │ │ │ │ ├── unnamed-chunk-4-3.png │ │ │ │ ├── unnamed-chunk-4-4.png │ │ │ │ ├── unnamed-chunk-6-1.png │ │ │ │ ├── unnamed-chunk-8-1.png │ │ │ │ ├── unnamed-chunk-8-2.png │ │ │ │ ├── unnamed-chunk-8-3.png │ │ │ │ └── unnamed-chunk-8-4.png │ │ ├── images │ │ │ ├── .DS_Store │ │ │ ├── RStudio-Logo.png │ │ │ ├── bioconducter-packages.png │ │ │ ├── bioconducter.png │ │ │ ├── bookdown-head.png │ │ │ ├── bookdown-show.png │ │ │ ├── cheatsheet-small-2.png │ │ │ ├── cheatsheets-small-1.png │ │ │ ├── cran-package-alphabet.png │ │ │ ├── cran-task-view.png │ │ │ ├── cran.png │ │ │ ├── create-document.png │ │ │ ├── flexdashboard-github.png │ │ │ ├── google-logo.gif │ │ │ ├── gui-console.png │ │ │ ├── gui-history.png │ │ │ ├── gui-plots.png │ │ │ ├── gui-source.png │ │ │ ├── gui-view.png │ │ │ ├── learnr-github.png │ │ │ ├── new-document-document.png │ │ │ ├── new-document-presentation.png │ │ │ ├── new-document-shiny.png │ │ │ ├── new-document-template.png │ │ │ ├── parsnip-google.png │ │ │ ├── parsnip-rseek.png │ │ │ ├── rmarkdown-html_document.png │ │ │ ├── rmarkdown-pdf_document.png │ │ │ ├── rseek.png │ │ │ ├── rstudio-community-logo.png │ │ │ ├── rticles-github.png │ │ │ ├── rweekly.png │ │ │ ├── stackoverflow-logo.png │ │ │ ├── usc-dev.png │ │ │ └── xaringan-github.png │ │ ├── libs │ │ │ ├── .DS_Store │ │ │ ├── DiagrammeR-styles-0.2 │ │ │ │ └── styles.css │ │ │ ├── d3-3.5.12 │ │ │ │ ├── LICENSE │ │ │ │ ├── bower.json │ │ │ │ ├── d3.js │ │ │ │ ├── d3.min.js │ │ │ │ └── package.js │ │ │ ├── grViz-binding-1.0.0 │ │ │ │ └── grViz.js │ │ │ ├── htmlwidgets-1.3 │ │ │ │ └── htmlwidgets.js │ │ │ ├── jquery-2.1.4 │ │ │ │ ├── MIT-LICENSE.txt │ │ │ │ ├── bower.json │ │ │ │ ├── dist │ │ │ │ │ ├── jquery.js │ │ │ │ │ ├── jquery.min.js │ │ │ │ │ └── jquery.min.map │ │ │ │ └── src │ │ │ │ │ ├── ajax.js │ │ │ │ │ ├── ajax │ │ │ │ │ ├── jsonp.js │ │ │ │ │ ├── load.js │ │ │ │ │ ├── parseJSON.js │ │ │ │ │ ├── parseXML.js │ │ │ │ │ ├── script.js │ │ │ │ │ ├── var │ │ │ │ │ │ ├── nonce.js │ │ │ │ │ │ └── rquery.js │ │ │ │ │ └── xhr.js │ │ │ │ │ ├── attributes.js │ │ │ │ │ ├── attributes │ │ │ │ │ ├── attr.js │ │ │ │ │ ├── classes.js │ │ │ │ │ ├── prop.js │ │ │ │ │ ├── support.js │ │ │ │ │ └── val.js │ │ │ │ │ ├── callbacks.js │ │ │ │ │ ├── core.js │ │ │ │ │ ├── core │ │ │ │ │ ├── access.js │ │ │ │ │ ├── init.js │ │ │ │ │ ├── parseHTML.js │ │ │ │ │ ├── ready.js │ │ │ │ │ └── var │ │ │ │ │ │ └── rsingleTag.js │ │ │ │ │ ├── css.js │ │ │ │ │ ├── css │ │ │ │ │ ├── addGetHookIf.js │ │ │ │ │ ├── curCSS.js │ │ │ │ │ ├── defaultDisplay.js │ │ │ │ │ ├── hiddenVisibleSelectors.js │ │ │ │ │ ├── support.js │ │ │ │ │ ├── swap.js │ │ │ │ │ └── var │ │ │ │ │ │ ├── cssExpand.js │ │ │ │ │ │ ├── getStyles.js │ │ │ │ │ │ ├── isHidden.js │ │ │ │ │ │ ├── rmargin.js │ │ │ │ │ │ └── rnumnonpx.js │ │ │ │ │ ├── data.js │ │ │ │ │ ├── data │ │ │ │ │ ├── Data.js │ │ │ │ │ ├── accepts.js │ │ │ │ │ └── var │ │ │ │ │ │ ├── data_priv.js │ │ │ │ │ │ └── data_user.js │ │ │ │ │ ├── deferred.js │ │ │ │ │ ├── deprecated.js │ │ │ │ │ ├── dimensions.js │ │ │ │ │ ├── effects.js │ │ │ │ │ ├── effects │ │ │ │ │ ├── Tween.js │ │ │ │ │ └── animatedSelector.js │ │ │ │ │ ├── event.js │ │ │ │ │ ├── event │ │ │ │ │ ├── ajax.js │ │ │ │ │ ├── alias.js │ │ │ │ │ └── support.js │ │ │ │ │ ├── exports │ │ │ │ │ ├── amd.js │ │ │ │ │ └── global.js │ │ │ │ │ ├── intro.js │ │ │ │ │ ├── jquery.js │ │ │ │ │ ├── manipulation.js │ │ │ │ │ ├── manipulation │ │ │ │ │ ├── _evalUrl.js │ │ │ │ │ ├── support.js │ │ │ │ │ └── var │ │ │ │ │ │ └── rcheckableType.js │ │ │ │ │ ├── offset.js │ │ │ │ │ ├── outro.js │ │ │ │ │ ├── queue.js │ │ │ │ │ ├── queue │ │ │ │ │ └── delay.js │ │ │ │ │ ├── selector-native.js │ │ │ │ │ ├── selector-sizzle.js │ │ │ │ │ ├── selector.js │ │ │ │ │ ├── serialize.js │ │ │ │ │ ├── sizzle │ │ │ │ │ └── dist │ │ │ │ │ │ ├── sizzle.js │ │ │ │ │ │ ├── sizzle.min.js │ │ │ │ │ │ └── sizzle.min.map │ │ │ │ │ ├── traversing.js │ │ │ │ │ ├── traversing │ │ │ │ │ ├── findFilter.js │ │ │ │ │ └── var │ │ │ │ │ │ └── rneedsContext.js │ │ │ │ │ ├── var │ │ │ │ │ ├── arr.js │ │ │ │ │ ├── class2type.js │ │ │ │ │ ├── concat.js │ │ │ │ │ ├── hasOwn.js │ │ │ │ │ ├── indexOf.js │ │ │ │ │ ├── pnum.js │ │ │ │ │ ├── push.js │ │ │ │ │ ├── rnotwhite.js │ │ │ │ │ ├── slice.js │ │ │ │ │ ├── strundefined.js │ │ │ │ │ ├── support.js │ │ │ │ │ └── toString.js │ │ │ │ │ └── wrap.js │ │ │ ├── metrics-graphics-2.7.0 │ │ │ │ ├── LICENSE │ │ │ │ ├── bower.json │ │ │ │ └── dist │ │ │ │ │ ├── metricsgraphics.css │ │ │ │ │ ├── metricsgraphics.js │ │ │ │ │ ├── metricsgraphics.min.js │ │ │ │ │ ├── mg_regions.css │ │ │ │ │ └── mg_regions.js │ │ │ ├── metricsgraphics-binding-0.9.0 │ │ │ │ └── metricsgraphics.js │ │ │ ├── remark-css-0.0.1 │ │ │ │ └── default.css │ │ │ ├── remark-latest.min.js │ │ │ └── viz-0.3 │ │ │ │ └── viz.js │ │ ├── macros.js │ │ ├── slides.pdf │ │ ├── slides_4-3.Rmd │ │ ├── slides_4-3.html │ │ └── theme.css │ └── slides.pdf │ ├── 2019-02_debugging-and-profiling │ ├── README.md │ ├── flyer.pdf │ ├── materials │ │ ├── 2019-02_happy-scientist-flyer.pages │ │ ├── 2019-02_happy-scientist-flyer.pdf │ │ ├── niels-bohr-image.png │ │ ├── urn_code.R │ │ ├── urn_profile.R │ │ └── xaringan-slides │ │ │ ├── .DS_Store │ │ │ ├── 50000.png │ │ │ ├── 500000.png │ │ │ ├── Untitled.html │ │ │ ├── colors.css │ │ │ ├── elephant.png │ │ │ ├── libs │ │ │ └── remark-css-0.0.1 │ │ │ │ └── default.css │ │ │ ├── long-nose.png │ │ │ ├── macros.js │ │ │ ├── slides.Rmd │ │ │ ├── slides.html │ │ │ ├── slides.pdf │ │ │ ├── slides_files │ │ │ └── figure-html │ │ │ │ ├── size-matters-1.png │ │ │ │ ├── unnamed-chunk-19-1.png │ │ │ │ ├── unnamed-chunk-20-1.png │ │ │ │ ├── unnamed-chunk-21-1.png │ │ │ │ ├── unnamed-chunk-22-1.png │ │ │ │ ├── unnamed-chunk-23-1.png │ │ │ │ ├── unnamed-chunk-24-1.png │ │ │ │ ├── unnamed-chunk-25-1.png │ │ │ │ ├── unnamed-chunk-26-1.png │ │ │ │ ├── unnamed-chunk-27-1.png │ │ │ │ ├── unnamed-chunk-28-1.png │ │ │ │ ├── unnamed-chunk-30-1.png │ │ │ │ ├── unnamed-chunk-31-1.png │ │ │ │ ├── unnamed-chunk-32-1.png │ │ │ │ ├── unnamed-chunk-33-1.png │ │ │ │ ├── unnamed-chunk-35-1.png │ │ │ │ ├── unnamed-chunk-36-1.png │ │ │ │ ├── unnamed-chunk-41-1.png │ │ │ │ ├── unnamed-chunk-45-1.png │ │ │ │ ├── unnamed-chunk-47-1.png │ │ │ │ └── unnamed-chunk-52-1.png │ │ │ └── theme.css │ ├── slides.html │ └── slides.pdf │ ├── 2019-03_building-r-packages │ ├── 2019-03_happy-scientist-flyer.pages │ ├── 2019-03_happy-scientist-flyer.pages.pdf │ ├── README.md │ ├── materials │ │ ├── 2019-03_happy-scientist-flyer.pages │ │ ├── 2019-03_happy-scientist-flyer.pages.pdf │ │ └── xaringan_slides │ │ │ ├── Building R Packages.Rmd │ │ │ ├── Building_R_Packages.html │ │ │ ├── colors.css │ │ │ ├── libs │ │ │ └── remark-css-0.0.1 │ │ │ │ └── default.css │ │ │ ├── macros.js │ │ │ ├── mypdf.pdf │ │ │ ├── screenshots │ │ │ ├── badges.png │ │ │ ├── cpp11.png │ │ │ ├── creation.png │ │ │ ├── document.png │ │ │ ├── drob.png │ │ │ ├── hilaryparker.png │ │ │ ├── licenses.png │ │ │ ├── man.png │ │ │ ├── minimal-package.png │ │ │ ├── namespace.png │ │ │ ├── news.png │ │ │ ├── openMP.png │ │ │ ├── readme.png │ │ │ └── rpkgs.png │ │ │ └── theme.css │ └── slides.pdf │ ├── 2019-04_rmarkdown │ ├── README.md │ ├── flyer.pdf │ └── image.jpg │ ├── 2019-04_slurmr-workshop │ ├── 01-sapply.R │ ├── 01-sapply.slurm │ ├── 02-mclapply.R │ ├── 02-mclapply.slurm │ ├── 03-parsapply-slurmr.R │ ├── 03-parsapply-slurmr.slurm │ ├── 04-slurm_sapply.R │ ├── 04-slurm_sapply.slurm │ ├── 05-sapply.R │ ├── Makefile │ ├── README.md │ ├── _site.yml │ ├── docs │ │ ├── 01-sapply.R │ │ ├── 01-sapply.slurm │ │ ├── 02-mclapply.R │ │ ├── 02-mclapply.slurm │ │ ├── 03-parsapply-slurmr.R │ │ ├── 03-parsapply-slurmr.slurm │ │ ├── 04-slurm_sapply.R │ │ ├── 04-slurm_sapply.slurm │ │ ├── 05-sapply.R │ │ ├── Makefile │ │ ├── READM.html │ │ ├── index.html │ │ ├── part1.Rmd │ │ ├── part1.html │ │ ├── part2.Rmd │ │ ├── part2.html │ │ └── site_libs │ │ │ ├── bootstrap-3.3.5 │ │ │ ├── css │ │ │ │ ├── bootstrap-theme.css │ │ │ │ ├── bootstrap-theme.css.map │ │ │ │ ├── bootstrap-theme.min.css │ │ │ │ ├── bootstrap.css │ │ │ │ ├── bootstrap.css.map │ │ │ │ ├── bootstrap.min.css │ │ │ │ ├── cerulean.min.css │ │ │ │ ├── cosmo.min.css │ │ │ │ ├── darkly.min.css │ │ │ │ ├── flatly.min.css │ │ │ │ ├── fonts │ │ │ │ │ ├── Lato.ttf │ │ │ │ │ ├── LatoBold.ttf │ │ │ │ │ ├── LatoItalic.ttf │ │ │ │ │ ├── NewsCycle.ttf │ │ │ │ │ ├── NewsCycleBold.ttf │ │ │ │ │ ├── OpenSans.ttf │ │ │ │ │ ├── OpenSansBold.ttf │ │ │ │ │ ├── OpenSansBoldItalic.ttf │ │ │ │ │ ├── OpenSansItalic.ttf │ │ │ │ │ ├── OpenSansLight.ttf │ │ │ │ │ ├── OpenSansLightItalic.ttf │ │ │ │ │ ├── Raleway.ttf │ │ │ │ │ ├── RalewayBold.ttf │ │ │ │ │ ├── Roboto.ttf │ │ │ │ │ ├── RobotoBold.ttf │ │ │ │ │ ├── RobotoLight.ttf │ │ │ │ │ ├── RobotoMedium.ttf │ │ │ │ │ ├── SourceSansPro.ttf │ │ │ │ │ ├── SourceSansProBold.ttf │ │ │ │ │ ├── SourceSansProItalic.ttf │ │ │ │ │ ├── SourceSansProLight.ttf │ │ │ │ │ └── Ubuntu.ttf │ │ │ │ ├── journal.min.css │ │ │ │ ├── lumen.min.css │ │ │ │ ├── paper.min.css │ │ │ │ ├── readable.min.css │ │ │ │ ├── sandstone.min.css │ │ │ │ ├── simplex.min.css │ │ │ │ ├── spacelab.min.css │ │ │ │ ├── united.min.css │ │ │ │ └── yeti.min.css │ │ │ ├── fonts │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ ├── js │ │ │ │ ├── bootstrap.js │ │ │ │ ├── bootstrap.min.js │ │ │ │ └── npm.js │ │ │ └── shim │ │ │ │ ├── html5shiv.min.js │ │ │ │ └── respond.min.js │ │ │ ├── highlightjs-9.12.0 │ │ │ ├── default.css │ │ │ ├── highlight.js │ │ │ └── textmate.css │ │ │ ├── jquery-1.11.3 │ │ │ └── jquery.min.js │ │ │ ├── jqueryui-1.11.4 │ │ │ ├── README │ │ │ ├── images │ │ │ │ ├── ui-icons_444444_256x240.png │ │ │ │ ├── ui-icons_555555_256x240.png │ │ │ │ ├── ui-icons_777620_256x240.png │ │ │ │ ├── ui-icons_777777_256x240.png │ │ │ │ ├── ui-icons_cc0000_256x240.png │ │ │ │ └── ui-icons_ffffff_256x240.png │ │ │ ├── index.html │ │ │ ├── jquery-ui.css │ │ │ ├── jquery-ui.js │ │ │ ├── jquery-ui.min.css │ │ │ ├── jquery-ui.min.js │ │ │ ├── jquery-ui.structure.css │ │ │ ├── jquery-ui.structure.min.css │ │ │ ├── jquery-ui.theme.css │ │ │ └── jquery-ui.theme.min.css │ │ │ ├── navigation-1.1 │ │ │ ├── codefolding.js │ │ │ ├── sourceembed.js │ │ │ └── tabsets.js │ │ │ └── tocify-1.9.1 │ │ │ ├── jquery.tocify.css │ │ │ └── jquery.tocify.js │ ├── index.Rmd │ ├── part1.Rmd │ ├── part2.Rmd │ └── slurmr-workshop.Rproj │ ├── 2019-06_research-pipelines │ ├── README.md │ ├── fig │ │ ├── git.dia │ │ ├── git.svg │ │ ├── pipeline.dia │ │ └── pipeline.svg │ ├── index.Rmd │ ├── index.html │ └── libs │ │ ├── Proj4Leaflet │ │ ├── proj4-compressed.js │ │ └── proj4leaflet.js │ │ ├── crosstalk │ │ ├── css │ │ │ └── crosstalk.css │ │ └── js │ │ │ ├── crosstalk.js │ │ │ ├── crosstalk.js.map │ │ │ ├── crosstalk.min.js │ │ │ └── crosstalk.min.js.map │ │ ├── datatables-binding │ │ └── datatables.js │ │ ├── datatables-css │ │ └── datatables-crosstalk.css │ │ ├── dt-core │ │ ├── css │ │ │ ├── jquery.dataTables.extra.css │ │ │ └── jquery.dataTables.min.css │ │ └── js │ │ │ └── jquery.dataTables.min.js │ │ ├── htmlwidgets │ │ └── htmlwidgets.js │ │ ├── jquery │ │ └── jquery.min.js │ │ ├── leaflet-binding │ │ └── leaflet.js │ │ ├── leaflet │ │ ├── images │ │ │ ├── layers-2x.png │ │ │ ├── layers.png │ │ │ ├── marker-icon-2x.png │ │ │ ├── marker-icon.png │ │ │ └── marker-shadow.png │ │ ├── leaflet.css │ │ └── leaflet.js │ │ ├── leafletfix │ │ └── leafletfix.css │ │ ├── remark-css-0.0.1 │ │ ├── default-fonts.css │ │ └── default.css │ │ ├── remark-css │ │ ├── default-fonts.css │ │ └── default.css │ │ └── rstudio_leaflet │ │ ├── images │ │ └── 1px.png │ │ └── rstudio_leaflet.css │ ├── 2020_01_git-and-github │ ├── README.md │ ├── materials │ │ ├── .gitignore │ │ ├── colors.css │ │ ├── images │ │ │ ├── fire.png │ │ │ ├── happygitwithr.png │ │ │ ├── preprint.png │ │ │ ├── textdata-commits.png │ │ │ └── what-is-git.png │ │ ├── libs │ │ │ └── remark-css-0.0.1 │ │ │ │ └── default.css │ │ ├── macros.js │ │ ├── slides.pdf │ │ ├── theme.css │ │ ├── use-git.Rmd │ │ └── use-git.html │ └── slides.pdf │ ├── 2021-02-18-slurmr-workshop │ └── README.md │ ├── 2021-03-18-git-crash │ └── README.md │ ├── 2023-01-26-getting-started-with-stan │ ├── README.md │ └── Seminar Flyer Lu Zhang.pdf │ ├── 2023-03-09-annotation-query │ ├── README.md │ └── Seminar Flyer HS19.pdf │ ├── 2023-04-13-building-an-r-package-from-scratch │ ├── README.md │ └── Seminar Flyer HS20.pdf │ ├── 2023-10-12-Copilot-with-R │ ├── Copilot With R.pdf │ ├── GPT and Transformer.pdf │ ├── README.md │ └── Seminar Flyer HS21.pdf │ ├── 2024-02-08-autodiff-lib │ ├── README.md │ └── Seminar Flyer HS22.pdf │ ├── 2024-02-29-intro-to-pytorch │ ├── Pytorch_DL.pdf │ ├── README.md │ └── Seminar Flyer HS23.pdf │ └── 2025-01-30-jax-lec2 │ ├── README.md │ └── Seminar Flyer HS24.pdf ├── oldpackages.csv ├── packages.csv ├── templates ├── hpc.md ├── paper.md ├── r-package.md ├── readme.md └── readme.template.md ├── wiki ├── Bioghost-server.md ├── HPC-in-R.md ├── High-Performance-Computing.md ├── Home.md ├── IMAGE Logo_horiz.png ├── IMAGE Logo_vert.png ├── README.md ├── Running-R-on-HPC.md ├── Running-RStudio-on-the-HPC.md ├── Setting-up-optional-OpenMP-support.md ├── Slow-patterns │ ├── README.Rmd │ ├── README.md │ └── README_files │ │ └── figure-gfm │ │ ├── unnamed-chunk-10-1.png │ │ ├── unnamed-chunk-3-1.png │ │ ├── unnamed-chunk-3-2.png │ │ ├── unnamed-chunk-3-3.png │ │ ├── unnamed-chunk-4-1.png │ │ ├── unnamed-chunk-5-1.png │ │ └── unnamed-chunk-6-1.png ├── Structures-and-pointers-with-Rcpp.md ├── Virtual-Hosts.md ├── Wishlist.md ├── _Sidebar.md ├── coding-standards-george.md ├── coding-standards.md └── install-rmpi-on-hpc.md └── workshops └── writing_r_pkgs2017 ├── README.md ├── examples.r ├── numint.r ├── numint.rmd ├── program.md ├── program.rmd ├── slides.html └── slides.rmd /.github/workflows/build-readme.yml: -------------------------------------------------------------------------------- 1 | # This workflow uses actions that are not certified by GitHub. 2 | # They are provided by a third-party and are governed by 3 | # separate terms of service, privacy policy, and support 4 | # documentation. 5 | # 6 | # See https://github.com/r-lib/actions/tree/master/examples#readme for 7 | # additional example workflows available for the R community. 8 | 9 | name: Compilar w docker 10 | 11 | on: 12 | push: 13 | branches: [ master ] 14 | schedule: 15 | - cron: '0 0 * * *' 16 | 17 | jobs: 18 | build: 19 | runs-on: Ubuntu-latest 20 | env: 21 | GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 22 | 23 | steps: 24 | - uses: actions/checkout@v4 25 | 26 | - name: Container 27 | run: docker pull uscbiostats/software-dev:latest 28 | 29 | - name: Compilar 30 | run: | 31 | docker run -v$(pwd):/home/report -w/home/report uscbiostats/software-dev:latest \ 32 | Rscript -e 'rmarkdown::render("README.Rmd")' 33 | ./docker/print_warning.sh 34 | 35 | - name: Commit results 36 | run: | 37 | git add README* 38 | git config --local user.name "$GITHUB_ACTOR" 39 | git config --local user.email "$GITHUB_ACTOR@users.noreply.github.com" 40 | git commit -a -m 'Re-build Rmarkdown files' || echo Nothing has changed 41 | git push origin || echo "No changes to commit" 42 | 43 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .Rproj.user 2 | .Rhistory 3 | .RData 4 | .Ruserdata 5 | *.Rproj* 6 | *_cache 7 | .DS_Store -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "happy_scientist/seminars/2023-01-26_Getting-Started-with-Stan"] 2 | path = happy_scientist/seminars/2023-01-26_Getting-Started-with-Stan 3 | url = https://github.com/LuZhangstat/Getting-Started-with-Stan.git 4 | -------------------------------------------------------------------------------- /docker/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM rocker/tidyverse:latest 2 | RUN apt-get update && \ 3 | apt-get install -y --no-install-recommends pandoc r-cran-rmarkdown 4 | RUN apt-get update && \ 5 | apt-get install -y --no-install-recommends libssl-dev 6 | RUN Rscript -e 'utils::install.packages("badger","scholar")' 7 | CMD ["bash"] 8 | 9 | -------------------------------------------------------------------------------- /docker/Makefile: -------------------------------------------------------------------------------- 1 | build: 2 | docker build -t uscbiostats/software-dev:latest -f Dockerfile . 3 | push: build 4 | docker push uscbiostats/software-dev:latest 5 | 6 | -------------------------------------------------------------------------------- /docker/print_warning.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | sed -i '1s/^//' README.md 9 | -------------------------------------------------------------------------------- /happy_scientist/seminars/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-01_github/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-01_github/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-01_github/README.md: -------------------------------------------------------------------------------- 1 | Happy Scientist Seminar #1: 2 | Title: Introduction to Collaborating with GitHub 3 | Time: 1:00-2:30pm, Thursday Oct. 27th 2016 4 | Where: Second floor Soto common area, next to Biostats kitchen 5 | 6 | `slides.pptx` in `material/` was used to create `slides.pdf` 7 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-01_github/flyer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-01_github/flyer.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-01_github/material/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-01_github/material/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-01_github/material/slides.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-01_github/material/slides.pptx -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-01_github/slides.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-01_github/slides.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-02_github/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-02_github/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-02_github/README.md: -------------------------------------------------------------------------------- 1 | Happy Scientist Seminar #2: 2 | Title: More on collaborating with GitHub 3 | Time: 1:00-2:30pm, Thursday Nov. 17th 2016 4 | Where: Second floor Soto common area, next to Biostats kitchen 5 | 6 | `slides.pptx` in `material/` was used to create `slides.pdf` 7 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-02_github/flyer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-02_github/flyer.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-02_github/material/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-02_github/material/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-02_github/material/Happy Scientist 2.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-02_github/material/Happy Scientist 2.pptx -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-02_github/slides.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-02_github/slides.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-03_r-package/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-03_r-package/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-03_r-package/README.md: -------------------------------------------------------------------------------- 1 | Happy Scientist Seminar #3: 2 | Title: Building R packages 3 | Time: 1:00-2:30pm, Thursday Dec. 8th 4 | Where: Second floor Soto common area, next to Biostats kitchen 5 | Materials can be found in this [repository](https://github.com/USCbiostats/RPackageTemplate) 6 | 7 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2016-03_r-package/flyer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2016-03_r-package/flyer.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2017-04_r-package/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/README.md: -------------------------------------------------------------------------------- 1 | Happy Scientist Seminar #4: 2 | Title: Yet Another "Writing R Packages" tutorial 3 | Time: 12pm-1pm, Thursday February 9th 2017 4 | Where: SSB 115 5 | html slides: [slides](https://rawcdn.githack.com/USCbiostats/HappyScientist/seminars/2017-04_r-package/slides.html) 6 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/flyer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2017-04_r-package/flyer.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2017-04_r-package/material/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/efficiency.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2017-04_r-package/material/efficiency.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/.Rbuildignore: -------------------------------------------------------------------------------- 1 | ^.*\.Rproj$ 2 | ^\.Rproj\.user$ 3 | ^\.travis\.yml$ 4 | ^codecov\.yml$ 5 | ^README\.Rmd$ 6 | ^README-.*\.png$ 7 | ^appveyor\.yml$ 8 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/ChangeLog: -------------------------------------------------------------------------------- 1 | 2017-01-25 George G. Vega Yon 2 | * Initial Commit 3 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/DESCRIPTION: -------------------------------------------------------------------------------- 1 | Package: funnypkg 2 | Type: Package 3 | Title: What the Package Does (Title Case) 4 | Version: 0.1.999 5 | Author: Who wrote it 6 | Maintainer: The package maintainer 7 | Description: More about what it does (maybe more than one line) 8 | Use four spaces when indenting paragraphs within the Description. 9 | License: MIT + file LICENSE 10 | Encoding: UTF-8 11 | LazyData: true 12 | Suggests: 13 | testthat, 14 | covr 15 | RoxygenNote: 5.0.1 16 | Imports: graphics 17 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/LICENSE: -------------------------------------------------------------------------------- 1 | YEAR: 2017 2 | COPYRIGHT HOLDER: George G. Vega Yon 3 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/NAMESPACE: -------------------------------------------------------------------------------- 1 | # Generated by roxygen2: do not edit by hand 2 | 3 | S3method(plot,funnypkg_addnums) 4 | export(addnums) 5 | importFrom(graphics,axis) 6 | importFrom(graphics,legend) 7 | importFrom(graphics,plot.new) 8 | importFrom(graphics,plot.window) 9 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/NEWS.md: -------------------------------------------------------------------------------- 1 | # funnypkg 0.1.999 2 | 3 | * Added a `NEWS.md` file to track changes to the package. 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/R/addup.r: -------------------------------------------------------------------------------- 1 | #' The title of -addnums- 2 | #' 3 | #' Here is a brief description 4 | #' 5 | #' @param a Numeric scalar. A brief description. 6 | #' @param b Numeric scalar. A brief description. 7 | #' 8 | #' @details Computes the sum of \code{x} and \code{y}. 9 | #' @return A list of class \code{funnypkg_addnums}: 10 | #' \item{a}{Numeric scalar.} 11 | #' \item{b}{Numeric scalar.} 12 | #' \item{ab}{Numeric scalar. the sum of \code{a} and \code{b}} 13 | #' @examples 14 | #' addnums(1, 2) 15 | #' 16 | #' @export 17 | addnums <- function(a, b) { 18 | ans <- a + b 19 | structure(list(a = a, b = b, ab = ans) 20 | , class = "funnypkg_addnums") 21 | } 22 | 23 | #' @rdname addnums 24 | #' @export 25 | #' @param x An object of class \code{funnypkg_addnums}. 26 | #' @param y Ignored. 27 | #' @param ... Further arguments passed to 28 | #' \code{\link[graphics:plot.window]{plot.window}}. 29 | plot.funnypkg_addnums <- function(x, y = NULL, ...) { 30 | graphics::plot.new() 31 | graphics::plot.window(xlim = range(unlist(c(0,x))), ylim = c(-.5,1)) 32 | graphics::axis(1) 33 | with(x, graphics::segments(0, 1, ab, col = "blue", lwd=3)) 34 | with(x, graphics::segments(0, 0, a, col = "green", lwd=3)) 35 | with(x, graphics::segments(a, .5, a + b, col = "red", lwd=3)) 36 | graphics::legend("bottom", col = c("blue", "green", "red"), 37 | legend = c("a+b", "a", "b"), bty = "n", 38 | ncol = 3, lty = 1, lwd=3) 39 | 40 | invisible(x) 41 | } 42 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/R/funnypkg-pkg.r: -------------------------------------------------------------------------------- 1 | #' @importFrom graphics plot.new plot.window axis legend 2 | NULL 3 | 4 | #' funnypkg 5 | #' 6 | #' A (not so) funny collection of functions 7 | #' 8 | #' @description We add stuff up... You can access to the project 9 | #' website at \url{http://github.com/USCBiostats/funnypkg} 10 | #' 11 | #' @docType package 12 | #' @name funnypkg 13 | #' 14 | #' @author George G. Vega Yon 15 | NULL -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/README.Rmd: -------------------------------------------------------------------------------- 1 | --- 2 | output: github_document 3 | --- 4 | 5 | [![Travis-CI Build Status](https://travis-ci.org/USCbiostats/software-dev.svg?branch=master)](https://travis-ci.org/) 6 | [![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/github/USCbiostats/software-dev?branch=master&svg=true)](https://ci.appveyor.com/project/USCBiostats/software-dev) 7 | [![Coverage Status](https://img.shields.io/codecov/c/github/USCbiostats/software-dev/master.svg)](https://codecov.io/github/USCBiostats/software-dev?branch=master) 8 | 9 | 10 | 11 | 12 | ```{r, echo = FALSE} 13 | knitr::opts_chunk$set( 14 | collapse = TRUE, 15 | comment = "#>", 16 | fig.path = "README-" 17 | ) 18 | ``` 19 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/README.md: -------------------------------------------------------------------------------- 1 | 2 | [![Travis-CI Build Status](https://travis-ci.org/USCbiostats/software-dev.svg?branch=master)](https://travis-ci.org/) [![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/github/USCbiostats/software-dev?branch=master&svg=true)](https://ci.appveyor.com/project/USCBiostats/software-dev) [![Coverage Status](https://img.shields.io/codecov/c/github/USCbiostats/software-dev/master.svg)](https://codecov.io/github/USCBiostats/software-dev?branch=master) 3 | 4 | 5 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/codecov.yml: -------------------------------------------------------------------------------- 1 | comment: false 2 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/man/addnums.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/addup.r 3 | \name{addnums} 4 | \alias{addnums} 5 | \alias{plot.funnypkg_addnums} 6 | \title{The title of -addnums- 7 | 8 | Here is a brief description} 9 | \usage{ 10 | addnums(a, b) 11 | 12 | \method{plot}{funnypkg_addnums}(x, y = NULL, ...) 13 | } 14 | \arguments{ 15 | \item{a}{Numeric scalar. A brief description.} 16 | 17 | \item{b}{Numeric scalar. A brief description.} 18 | 19 | \item{x}{An object of class \code{funnypkg_addnums}.} 20 | 21 | \item{y}{Ignored.} 22 | 23 | \item{...}{Further arguments passed to 24 | \code{\link[graphics:plot.window]{plot.window}}.} 25 | } 26 | \value{ 27 | A list of class \code{funnypkg_addnums}: 28 | \item{a}{Numeric scalar.} 29 | \item{b}{Numeric scalar.} 30 | \item{ab}{Numeric scalar. the sum of \code{a} and \code{b}} 31 | } 32 | \description{ 33 | The title of -addnums- 34 | 35 | Here is a brief description 36 | } 37 | \details{ 38 | Computes the sum of \code{x} and \code{y}. 39 | } 40 | \examples{ 41 | addnums(1, 2) 42 | 43 | } 44 | 45 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/man/funnypkg.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/funnypkg-pkg.r 3 | \docType{package} 4 | \name{funnypkg} 5 | \alias{funnypkg} 6 | \alias{funnypkg-package} 7 | \title{funnypkg} 8 | \description{ 9 | We add stuff up... You can access to the project 10 | website at \url{http://github.com/USCBiostats/funnypkg} 11 | } 12 | \details{ 13 | A (not so) funny collection of functions 14 | } 15 | \author{ 16 | George G. Vega Yon 17 | } 18 | 19 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/tests/testthat.R: -------------------------------------------------------------------------------- 1 | library(testthat) 2 | library(funnypkg) 3 | 4 | test_check("funnypkg") 5 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/funnypkg/tests/testthat/test-addnums.r: -------------------------------------------------------------------------------- 1 | context("Basic set of tests") 2 | test_that("foo(a, b) = a+b", { 3 | # Preparing the test 4 | a <- 1 5 | b <- -2 6 | 7 | # Calling the function 8 | ans0 <- a+b 9 | ans1 <- addnums(a, b) 10 | 11 | # Are these equal? 12 | expect_equal(ans0, ans1$ab) 13 | }) 14 | 15 | test_that("Plot returns -funnypkg_addnums-", { 16 | expect_s3_class(plot(addnums(1,2)), "funnypkg_addnums") 17 | }) -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/ggvy_style.css: -------------------------------------------------------------------------------- 1 | body { 2 | background: url("red_pequena.png") no-repeat top right; 3 | } 4 | 5 | /* unvisited link */ 6 | nav a:link {color: white;text-decoration: none} 7 | 8 | /* visited link */ 9 | nav a:visited {color: white;text-decoration: none} 10 | 11 | /* Hover */ 12 | nav a:hover, a:hover {color: white; text-shadow: 0 2px 1px black;text-decoration: none} 13 | 14 | /* selected link */ 15 | nav a:active {color: black;text-decoration: none} 16 | 17 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/material/red_pequena.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2017-04_r-package/material/red_pequena.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-04_r-package/slides.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2017-04_r-package/slides.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-05_high-performance/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2017-05_high-performance/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-05_high-performance/README.md: -------------------------------------------------------------------------------- 1 | Happy Scientist Seminar #5: 2 | Title: An introduction to using R for high-performance computing 3 | Time: 12pm-1pm, Thursday March 23rd 2017 4 | Where: SSB 115 5 | html slides: [slides](https://rawcdn.githack.com/) 6 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-05_high-performance/flyer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2017-05_high-performance/flyer.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-05_high-performance/material/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2017-05_high-performance/material/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-05_high-performance/material/cpuvsgpu.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2017-05_high-performance/material/cpuvsgpu.jpg -------------------------------------------------------------------------------- /happy_scientist/seminars/2017-05_high-performance/material/dist.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | // [[Rcpp::depends(RcppArmadillo)]] 5 | // [[Rcpp::plugins(openmp)]] 6 | 7 | using namespace Rcpp; 8 | 9 | // [[Rcpp::export]] 10 | arma::mat dist_par(arma::mat X, int cores = 1) { 11 | // Some constants 12 | int N = (int) X.n_rows; 13 | int K = (int) X.n_cols; 14 | 15 | // Output 16 | arma::mat D(N,N); 17 | D.zeros(); // Filling with zeros 18 | 19 | // Setting the cores 20 | omp_set_num_threads(cores); 21 | 22 | #pragma omp parallel for shared(D, N, K, X) default(none) 23 | for (int i=0; i 2 | #include 3 | using namespace Rcpp; 4 | 5 | // [[Rcpp::depends(RcppArmadillo)]] 6 | // [[Rcpp::plugins(openmp)]] 7 | 8 | // [[Rcpp::export]] 9 | double sim_pi(int m, int cores = 1) { 10 | 11 | // Setting the cores 12 | omp_set_num_threads(cores); 13 | int n = m / cores; 14 | 15 | double ans = 0.0, d; 16 | double val = 4.0/m; 17 | double piest; 18 | int i; 19 | 20 | // Pseudo RNG is not easy in OMP 21 | arma::mat points(m, 2); 22 | for (i = 0;i< (int) points.n_rows; i++) 23 | points.at(i, 0) = unif_rand()*2.0 - 1, 24 | points.at(i, 1) = unif_rand()*2.0 - 1; 25 | 26 | #pragma omp parallel default(none) shared(ans, cores, points) \ 27 | firstprivate(val, n, m) \ 28 | private(piest, i, d) 29 | { 30 | 31 | // Which core are we 32 | int core_num = omp_get_thread_num(); 33 | 34 | piest = 0.0; 35 | for (i = n*core_num; i < (n + n*core_num); i++) { 36 | 37 | d = sqrt(pow(points.at(i, 0), 2.0) + pow(points.at(i, 1), 2.0)); 38 | 39 | if (d <= 1.0) 40 | piest += val; 41 | } 42 | 43 | // This bit of code is executed one thread at a time. 44 | // Instead of -atomic-, we could have use -critical-, but that has 45 | // a higher overhead. 46 | #pragma omp atomic 47 | ans += piest; 48 | } 49 | 50 | return ans; 51 | } 52 | 53 | /* **R 54 | 55 | library(rbenchmark) 56 | 57 | nsim <- 1e8 58 | benchmark( 59 | pi01 = sim_pi(nsim, 1), 60 | pi02 = sim_pi(nsim, 2), 61 | pi04 = sim_pi(nsim, 4), 62 | pi10 = sim_pi(nsim, 10), 63 | replications = 1 64 | )[,1:4] 65 | 66 | */ 67 | 68 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-01_high-performance/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/README.md: -------------------------------------------------------------------------------- 1 | Happy Scientist Seminars, 2018: #1 2 | Title: An introduction to high-performance computing using R 3 | Time: 10am-11:30am, Thursday March 29th 2018 4 | Location: Soto (SSB) 115/116 5 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/flyer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-01_high-performance/flyer.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/.gitignore: -------------------------------------------------------------------------------- 1 | presentation_cache 2 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/cpuvsgpu.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-01_high-performance/material/cpuvsgpu.jpg -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/dist.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | // [[Rcpp::depends(RcppArmadillo)]] 5 | // [[Rcpp::plugins(openmp)]] 6 | 7 | using namespace Rcpp; 8 | 9 | // [[Rcpp::export]] 10 | arma::mat dist_par(arma::mat X, int cores = 1) { 11 | // Some constants 12 | int N = (int) X.n_rows; 13 | int K = (int) X.n_cols; 14 | 15 | // Output 16 | arma::mat D(N,N); 17 | D.zeros(); // Filling with zeros 18 | 19 | // Setting the cores 20 | omp_set_num_threads(cores); 21 | 22 | #pragma omp parallel for shared(D, N, K, X) default(none) 23 | for (int i=0; i 0) 20 | return(fibR(n - 1, f1 + f2, f1)) 21 | else 22 | return(f1) 23 | 24 | } 25 | 26 | # Testing it works 27 | ans <- NULL 28 | for (i in 1:20) 29 | ans <- c(ans, fibR(i)) 30 | 31 | # Visualizing it 32 | barplot(ans, names.arg = ans, las=2) 33 | 34 | # 2a) Implement the algorithm using Rcpp 35 | fibRcpp <- Rcpp::cppFunction(" 36 | double fibRcpp(int n, double f1 = 1, double f2 = 0) { 37 | if (n > 0) 38 | return fibRcpp(n - 1, f1 + f2, f1); 39 | else 40 | return f1; 41 | } 42 | ") 43 | 44 | # 2b) Using the microbenchmark package, tests how fast it is now using n=500 for 45 | # 1,000 replicates. 46 | microbenchmark::microbenchmark( 47 | fibRcpp(500), 48 | fibR(500), 49 | times = 1e3, unit = "relative" 50 | ) 51 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/fib.R: -------------------------------------------------------------------------------- 1 | # Exercise 2: Fibonacci with Rcpp 2 | # 3 | # The `fibR` function implements the Fibonacci number using recursions, which is 4 | # defined as follows: 5 | # 6 | # F_{n}=F_{n-1}+F_{n-2} 7 | # 8 | # Our goal is to implement the same algorithm using Rcpp, for which 9 | # 10 | # Fibonacci numbers https://en.wikipedia.org/wiki/Fibonacci_number 11 | # 12 | # Author: GEORGE G VEGA YON 13 | # Date : 2018-03-29 14 | 15 | # Fib in R 16 | fibR <- function(n, f1 = 1, f2 = 0) { 17 | 18 | if (n > 0) 19 | return(fibR(n - 1, f1 + f2, f1)) 20 | else 21 | return(f1) 22 | 23 | } 24 | 25 | # Testing it works 26 | ans <- NULL 27 | for (i in 1:20) 28 | ans <- c(ans, fibR(i)) 29 | 30 | # Visualizing it 31 | barplot(ans, names.arg = ans, las=2) 32 | 33 | # 2a) Implement the algorithm using Rcpp 34 | fibRcpp <- Rcpp::cppFunction(" 35 | double fibRcpp(int n, double f1 = 1, double f2 = 0) { 36 | // ALMOST EXACTLY THE SAME AS IN R 37 | } 38 | ") 39 | 40 | # 2b) Using the microbenchmark package, tests how fast it is now using n=500 for 41 | # 1,000 replicates. 42 | microbenchmark::microbenchmark( 43 | # FILL HERE 44 | ) 45 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/flynnsTaxonomy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-01_high-performance/material/flynnsTaxonomy.gif -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/presentation.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-01_high-performance/material/presentation.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/presentation_files/figure-slidy/unnamed-chunk-4-1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-01_high-performance/material/presentation_files/figure-slidy/unnamed-chunk-4-1.jpeg -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/random-mvn.R: -------------------------------------------------------------------------------- 1 | # Exercise 1: Generating MVN samples in parallel 2 | 3 | # In the random forest example, we generate the predictors from a multivariate random normal 4 | # We are interested in determining whether generating the MVN sample in parallel is also useful 5 | 6 | # Below is code that generates the mean and covariance structure for an MVN of dimension p 7 | # with mean zero and an autoregressive correlation structure 8 | library(MASS) 9 | p <- 500 10 | mean_x <- rep(0, p) 11 | sigma_x <- 0.5^abs(outer(1:p, 1:p, "-")) 12 | 13 | # To generate observations from a MVN distribution, we can use the mvrnorm function in the MASS package 14 | # Below is an example that creates a sample of size 100000 15 | system.time(samp1 <- mvrnorm(n = 100000, mu = mean_x, Sigma = sigma_x)) 16 | 17 | # 1a) Use functions in the 'parallel' package to generate another 100000 observatiouns in parallel 18 | 19 | # 1b) Use functions in the 'foreach' package to generate another sample of 100000 observations in parallel 20 | 21 | # 1c) Do you see any improvement? Try other variable (p) and sample (n) sizes, how does this change the results? 22 | # Hint: To quickly get a rough performance assessment, wrap your code above in system.time() 23 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/rslurm.R: -------------------------------------------------------------------------------- 1 | library(rslurm) 2 | 3 | # How many nodes are we going to be using 4 | nnodes <- 2L 5 | 6 | # The slurm_apply function is what makes all the work 7 | sjob <- slurm_apply( 8 | # We first define the job as a function 9 | f = function(n) { 10 | 11 | # Compiling Rcpp 12 | Rcpp::sourceCpp("~/simpi.cpp") 13 | 14 | # Returning pi 15 | sim_pi(1e9, cores = 8, seed = n*100) 16 | 17 | }, 18 | # The parameters that `f` receives must be passed as a data.frame 19 | params = data.frame(n = 1:nnodes), jobname = "sim-pi", 20 | 21 | # How many cpus we want to use (this when calling mcapply) 22 | cpus_per_node = 1, 23 | 24 | # Here we are asking for nodes with 8 CPUS 25 | slurm_options = list(`cpus-per-task` = 8), 26 | nodes = nnodes, 27 | submit = TRUE 28 | ) 29 | 30 | # We save the image so that later we can use the `sjob` object to retrieve the 31 | # results 32 | save.image("~/sim-pi.rda") -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/simpi.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | using namespace Rcpp; 4 | 5 | // [[Rcpp::depends(RcppArmadillo)]] 6 | // [[Rcpp::plugins(openmp)]] 7 | 8 | // C++11 provides several RNGs algorithms that can be set up to be thread safe. 9 | // [[Rcpp::plugins(cpp11)]] 10 | 11 | // [[Rcpp::export]] 12 | double sim_pi(int m, int cores = 1, int seed = 100) { 13 | 14 | // Setting the cores 15 | omp_set_num_threads(cores); 16 | int n = m / cores; 17 | 18 | double ans = 0.0, d; 19 | double val = 4.0/m; 20 | double piest; 21 | int i; 22 | 23 | #pragma omp parallel default(none) shared(ans, cores) \ 24 | firstprivate(val, n, m, seed) \ 25 | private(piest, i, d) 26 | { 27 | 28 | // Which core are we 29 | int core_num = omp_get_thread_num(); 30 | 31 | // Setting up the RNG 32 | // - The first line creates an engine that uses the 64-bit Mersenne Twister by 33 | // Matsumoto and Nishimura, 2000. One seed per core. 34 | // - The second line creates a function based on the real uniform between -1 35 | // and 1. This receives as argument the engine 36 | std::mt19937_64 engine((core_num + seed)*10); 37 | std::uniform_real_distribution my_runif(-1.0, 1.0); 38 | 39 | double p0, p1; 40 | 41 | piest = 0.0; 42 | for (i = n*core_num; i < (n + n*core_num); i++) { 43 | 44 | // Random number generation (see how we pass the engine) 45 | p0 = my_runif(engine); 46 | p1 = my_runif(engine); 47 | 48 | d = sqrt(pow(p0, 2.0) + pow(p1, 2.0)); 49 | 50 | if (d <= 1.0) 51 | piest += val; 52 | } 53 | 54 | // This bit of code is executed one thread at a time. 55 | // Instead of -atomic-, we could have use -critical-, but that has 56 | // a higher overhead. 57 | #pragma omp atomic 58 | ans += piest; 59 | } 60 | 61 | return ans; 62 | } 63 | 64 | /** *R 65 | 66 | library(rbenchmark) 67 | 68 | nsim <- 1e5 69 | benchmark( 70 | pi01 = sim_pi(nsim, 1), 71 | pi02 = sim_pi(nsim, 2), 72 | pi04 = sim_pi(nsim, 4), 73 | pi08 = sim_pi(nsim, 8), 74 | pi16 = sim_pi(nsim, 16), 75 | pi32 = sim_pi(nsim, 20), 76 | replications = 1000 77 | )[,1:4] 78 | 79 | */ 80 | 81 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/material/wordcount.R: -------------------------------------------------------------------------------- 1 | library(foreach) 2 | library(doParallel) 3 | 4 | countWords <- function(txt) { 5 | txt <- gsub("[[:punct:]]+", "", txt) 6 | txt <- gsub("[[:digit:]]+", "", txt) 7 | txt <- gsub("[-']", "", txt) 8 | txt <- trimws(txt, "left") 9 | allWords <- unlist(strsplit(tolower(txt), "[[:space:]]+")) 10 | as.list(table(allWords)) 11 | } 12 | 13 | con <- file("ulysses.txt", open = "r", encoding = "UTF-8") 14 | system.time(wordResults <- foreach(x = ireadLines(con, n = 1000)) %do% { 15 | countWords(x) 16 | }) 17 | close.connection(con) 18 | 19 | con <- file("ulysses.txt", open = "r", encoding = "UTF-8") 20 | registerDoParallel(6) 21 | system.time(wordResults <- foreach(x = ireadLines(con, n = 1000)) %dopar% { 22 | countWords(x) 23 | }) 24 | close.connection(con) 25 | 26 | finalCount <- aggregate(values ~ ind, stack(unlist(do.call(c, wordResults))), sum) 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-01_high-performance/slides.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-01_high-performance/slides.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-02_intro-tidyverse/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-02_intro-tidyverse/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-02_intro-tidyverse/README.md: -------------------------------------------------------------------------------- 1 | Happy Scientist Seminars, 2018: #2. 2 | Title: Introduction to the Tidyverse, pt 1. 3 | Speaker: Malcolm Barrett 4 | Time: 11:45am-1pm, Thursday October 11th 2018 5 | Location: Soto (SSB) 115/116 6 | html slides: [slides](https://rawcdn.githack.com/malcolmbarrett/happy_scientist/master/dplyr/intro_to_tidyverse_dplyr.html) 7 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-02_intro-tidyverse/flyer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-02_intro-tidyverse/flyer.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-02_intro-tidyverse/material/HappyScientist 2018 #2.pages: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-02_intro-tidyverse/material/HappyScientist 2018 #2.pages -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-03_intro-tidyverse/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-03_intro-tidyverse/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-03_intro-tidyverse/README.md: -------------------------------------------------------------------------------- 1 | Happy Scientist Seminars, 2018: #3 2 | Title: Introduction to the Tidyverse, pt 2. 3 | Speaker: Malcolm Barrett 4 | Time: 11:45am-1pm, Thurs. October 25th 2018 5 | Location: Soto (SSB) 115/116, 2001 N. Soto St., USC. 6 | html slides: [slides](https://rawcdn.githack.com/malcolmbarrett/happy_scientist/master/ggplot2/intro_to_tidyverse_ggplot2.html) 7 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-03_intro-tidyverse/flyer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-03_intro-tidyverse/flyer.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2018-03_intro-tidyverse/material/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2018-03_intro-tidyverse/material/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/flyer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/flyer.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/.Rbuildignore: -------------------------------------------------------------------------------- 1 | ^README\.Rmd$ 2 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/.gitignore: -------------------------------------------------------------------------------- 1 | .Rproj.user 2 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/2019-01_happy-scientist-flyer.pages: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/2019-01_happy-scientist-flyer.pages -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/2019-01_happy-scientist-flyer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/2019-01_happy-scientist-flyer.pdf -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-2-1.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-2-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-2-2.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-2-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-2-3.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-2-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-2-4.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-3-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-3-1.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-3-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-3-2.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-3-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-3-3.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-3-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-3-4.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-4-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-4-1.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-4-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-4-2.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-4-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-4-3.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-4-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-4-4.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-6-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-6-1.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-8-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-8-1.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-8-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-8-2.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-8-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-8-3.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-8-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/Slides_files/figure-html/unnamed-chunk-8-4.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/RStudio-Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/RStudio-Logo.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/bioconducter-packages.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/bioconducter-packages.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/bioconducter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/bioconducter.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/bookdown-head.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/bookdown-head.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/bookdown-show.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/bookdown-show.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/cheatsheet-small-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/cheatsheet-small-2.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/cheatsheets-small-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/cheatsheets-small-1.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/cran-package-alphabet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/cran-package-alphabet.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/cran-task-view.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/cran-task-view.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/cran.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/cran.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/create-document.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/create-document.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/flexdashboard-github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/flexdashboard-github.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/google-logo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/google-logo.gif -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/gui-console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/gui-console.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/gui-history.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/gui-history.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/gui-plots.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/gui-plots.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/gui-source.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/gui-source.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/gui-view.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/gui-view.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/learnr-github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/learnr-github.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/new-document-document.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/new-document-document.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/new-document-presentation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/new-document-presentation.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/new-document-shiny.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/new-document-shiny.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/new-document-template.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/new-document-template.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/parsnip-google.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/parsnip-google.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/parsnip-rseek.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/parsnip-rseek.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rmarkdown-html_document.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rmarkdown-html_document.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rmarkdown-pdf_document.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rmarkdown-pdf_document.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rseek.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rseek.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rstudio-community-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rstudio-community-logo.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rticles-github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rticles-github.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rweekly.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/rweekly.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/stackoverflow-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/stackoverflow-logo.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/usc-dev.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/usc-dev.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/images/xaringan-github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/images/xaringan-github.png -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/USCbiostats/software-dev/2b9a97145369c64ce1a986f10b0c5957cd9fe1c5/happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/.DS_Store -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/DiagrammeR-styles-0.2/styles.css: -------------------------------------------------------------------------------- 1 | .DiagrammeR,.grViz pre { 2 | white-space: pre-wrap; /* CSS 3 */ 3 | white-space: -moz-pre-wrap; /* Mozilla, since 1999 */ 4 | white-space: -pre-wrap; /* Opera 4-6 */ 5 | white-space: -o-pre-wrap; /* Opera 7 */ 6 | word-wrap: break-word; /* Internet Explorer 5.5+ */ 7 | } 8 | 9 | .DiagrammeR g .label { 10 | font-family: Helvetica; 11 | font-size: 14px; 12 | color: #333333; 13 | } 14 | 15 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/d3-3.5.12/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2010-2015, Michael Bostock 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | 7 | * Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | * Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | * The name Michael Bostock may not be used to endorse or promote products 15 | derived from this software without specific prior written permission. 16 | 17 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 18 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20 | DISCLAIMED. IN NO EVENT SHALL MICHAEL BOSTOCK BE LIABLE FOR ANY DIRECT, 21 | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 22 | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 24 | OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 25 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/d3-3.5.12/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "d3", 3 | "main": "d3.js", 4 | "scripts": [ 5 | "d3.js" 6 | ], 7 | "ignore": [ 8 | ".DS_Store", 9 | ".git", 10 | ".gitignore", 11 | ".npmignore", 12 | ".spmignore", 13 | ".travis.yml", 14 | "Makefile", 15 | "bin", 16 | "component.json", 17 | "composer.json", 18 | "index.js", 19 | "lib", 20 | "node_modules", 21 | "package.json", 22 | "src", 23 | "test" 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/d3-3.5.12/package.js: -------------------------------------------------------------------------------- 1 | // Package metadata for Meteor.js. 2 | 3 | Package.describe({ 4 | name: "d3js:d3", // http://atmospherejs.com/d3js/d3 5 | summary: "D3 (official): A JavaScript visualization library for HTML and SVG.", 6 | version: "3.5.12", 7 | git: "https://github.com/mbostock/d3.git" 8 | }); 9 | 10 | Package.onUse(function(api) { 11 | api.versionsFrom(["METEOR@1.0"]); 12 | api.addFiles("d3.js", "client"); 13 | }); 14 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/jquery-2.1.4/MIT-LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright 2014 jQuery Foundation and other contributors 2 | http://jquery.com/ 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining 5 | a copy of this software and associated documentation files (the 6 | "Software"), to deal in the Software without restriction, including 7 | without limitation the rights to use, copy, modify, merge, publish, 8 | distribute, sublicense, and/or sell copies of the Software, and to 9 | permit persons to whom the Software is furnished to do so, subject to 10 | the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 17 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 19 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 20 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 21 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/jquery-2.1.4/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery", 3 | "version": "2.1.4", 4 | "main": "dist/jquery.js", 5 | "license": "MIT", 6 | "ignore": [ 7 | "**/.*", 8 | "build", 9 | "dist/cdn", 10 | "speed", 11 | "test", 12 | "*.md", 13 | "AUTHORS.txt", 14 | "Gruntfile.js", 15 | "package.json" 16 | ], 17 | "devDependencies": { 18 | "sizzle": "2.1.1-jquery.2.1.2", 19 | "requirejs": "2.1.10", 20 | "qunit": "1.14.0", 21 | "sinon": "1.8.1" 22 | }, 23 | "keywords": [ 24 | "jquery", 25 | "javascript", 26 | "library" 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/jquery-2.1.4/src/ajax/load.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core", 3 | "../core/parseHTML", 4 | "../ajax", 5 | "../traversing", 6 | "../manipulation", 7 | "../selector", 8 | // Optional event/alias dependency 9 | "../event/alias" 10 | ], function( jQuery ) { 11 | 12 | // Keep a copy of the old load method 13 | var _load = jQuery.fn.load; 14 | 15 | /** 16 | * Load a url into a page 17 | */ 18 | jQuery.fn.load = function( url, params, callback ) { 19 | if ( typeof url !== "string" && _load ) { 20 | return _load.apply( this, arguments ); 21 | } 22 | 23 | var selector, type, response, 24 | self = this, 25 | off = url.indexOf(" "); 26 | 27 | if ( off >= 0 ) { 28 | selector = jQuery.trim( url.slice( off ) ); 29 | url = url.slice( 0, off ); 30 | } 31 | 32 | // If it's a function 33 | if ( jQuery.isFunction( params ) ) { 34 | 35 | // We assume that it's the callback 36 | callback = params; 37 | params = undefined; 38 | 39 | // Otherwise, build a param string 40 | } else if ( params && typeof params === "object" ) { 41 | type = "POST"; 42 | } 43 | 44 | // If we have elements to modify, make the request 45 | if ( self.length > 0 ) { 46 | jQuery.ajax({ 47 | url: url, 48 | 49 | // if "type" variable is undefined, then "GET" method will be used 50 | type: type, 51 | dataType: "html", 52 | data: params 53 | }).done(function( responseText ) { 54 | 55 | // Save response for use in complete callback 56 | response = arguments; 57 | 58 | self.html( selector ? 59 | 60 | // If a selector was specified, locate the right elements in a dummy div 61 | // Exclude scripts to avoid IE 'Permission Denied' errors 62 | jQuery("
").append( jQuery.parseHTML( responseText ) ).find( selector ) : 63 | 64 | // Otherwise use the full result 65 | responseText ); 66 | 67 | }).complete( callback && function( jqXHR, status ) { 68 | self.each( callback, response || [ jqXHR.responseText, status, jqXHR ] ); 69 | }); 70 | } 71 | 72 | return this; 73 | }; 74 | 75 | }); 76 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/jquery-2.1.4/src/ajax/parseJSON.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core" 3 | ], function( jQuery ) { 4 | 5 | // Support: Android 2.3 6 | // Workaround failure to string-cast null input 7 | jQuery.parseJSON = function( data ) { 8 | return JSON.parse( data + "" ); 9 | }; 10 | 11 | return jQuery.parseJSON; 12 | 13 | }); 14 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/jquery-2.1.4/src/ajax/parseXML.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core" 3 | ], function( jQuery ) { 4 | 5 | // Cross-browser xml parsing 6 | jQuery.parseXML = function( data ) { 7 | var xml, tmp; 8 | if ( !data || typeof data !== "string" ) { 9 | return null; 10 | } 11 | 12 | // Support: IE9 13 | try { 14 | tmp = new DOMParser(); 15 | xml = tmp.parseFromString( data, "text/xml" ); 16 | } catch ( e ) { 17 | xml = undefined; 18 | } 19 | 20 | if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) { 21 | jQuery.error( "Invalid XML: " + data ); 22 | } 23 | return xml; 24 | }; 25 | 26 | return jQuery.parseXML; 27 | 28 | }); 29 | -------------------------------------------------------------------------------- /happy_scientist/seminars/2019-01_rstudio-and-r/material/libs/jquery-2.1.4/src/ajax/script.js: -------------------------------------------------------------------------------- 1 | define([ 2 | "../core", 3 | "../ajax" 4 | ], function( jQuery ) { 5 | 6 | // Install script dataType 7 | jQuery.ajaxSetup({ 8 | accepts: { 9 | script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" 10 | }, 11 | contents: { 12 | script: /(?:java|ecma)script/ 13 | }, 14 | converters: { 15 | "text script": function( text ) { 16 | jQuery.globalEval( text ); 17 | return text; 18 | } 19 | } 20 | }); 21 | 22 | // Handle cache's special case and crossDomain 23 | jQuery.ajaxPrefilter( "script", function( s ) { 24 | if ( s.cache === undefined ) { 25 | s.cache = false; 26 | } 27 | if ( s.crossDomain ) { 28 | s.type = "GET"; 29 | } 30 | }); 31 | 32 | // Bind script tag hack transport 33 | jQuery.ajaxTransport( "script", function( s ) { 34 | // This transport only deals with cross domain requests 35 | if ( s.crossDomain ) { 36 | var script, callback; 37 | return { 38 | send: function( _, complete ) { 39 | script = jQuery("