# Threads Repository ## Overview Hi, I'm Neil, a freelance data professional and founder of Shoogle, a company helping people up their data skills. This repository contains code from various R themed threads I have posted on my twitter along with videos which I have recorded for some of the threads. - For online courses, training and consultancy visit my website [shoogle.co](shoogle.co) - Subscribe to my YouTube channel for videos on R and data science @shoogle [youtube.com/\@shoogle](www.youtube.com/@shoogle) - Follow me on Twitter for weekly threads on data and coding @neilgcurrie [twitter.com/neilgcurrie](www.twitter.com/neilgcurrie) ## Topics covered The code for each topic can be found in the above repositories, numbered by ID. Details are in the table below. | ID | Title | Description | Link to Thread | Link to Code | Link to Video | |:-----|:---------------------------------|:-----------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------| | 0027 | Data pipelines with targets | Intro to targets package | [Go to Thread](https://twitter.com/neilgcurrie/status/1623728509360418816) | [Go to Code](https://github.com/neilcuz/targets/blob/main/targets_walkthrough.md) | | | 0026 | Factors | Mastering factors with R | [Go to Thread](https://twitter.com/neilgcurrie/status/1617930289510223872) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0026_factors/factors.md) | | | 0025 | Pivoting | How to pivot with tidyr | [Go to Thread](https://twitter.com/neilgcurrie/status/1598361371904647168) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0025_pivot/pivot.md) | | | 0024 | Mapping | How to use the map family of functions from the purrr packages | [Go to Thread](https://twitter.com/neilgcurrie/status/1593287870923481089) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0024_mapping/mapping.md) | | | 0023 | Stages of a data science project | 5 stage framework of analysis projects | [Go to thread](https://twitter.com/neilgcurrie/status/1591113647744376832) | No code thread only | | | 0022 | Error handling with purrr | How to handle errors in R using safely and possibly from purrr | [Go to thread](https://twitter.com/neilgcurrie/status/1586025012057624577) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0022_error-handling-with-purrr/error-handling-with-purrr.md) | | | 0021 | GitHub and R | An introduction to using GitHub with R | [Go to Thread](https://twitter.com/neilgcurrie/status/1583125950350315520) | No code thread only | | | 0020 | Web scraping | An introduction to web scraping HTML websites with rvest | [Go to Thread](https://twitter.com/neilgcurrie/status/1580951615351140354) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0020_web-scraping/web-scraping.md) | [Go to Video](https://youtu.be/aFpnpTXjOxY) | | 0019 | Writing functions | When and how to write great functions in R | [Go to Thread](https://twitter.com/neilgcurrie/status/1578414872261378049) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0019_writing-functions/writing-functions.md) | | | 0018 | Dependency management with renv | Reproducible package version management with renv | [Go to Thread](https://twitter.com/neilgcurrie/status/1576965381532528642) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0018_dependency-management-with-renv/dependency-management-with-renv.md) | | | 0017 | Documenting code in R | How to document your code, including packages with roxygen2 | [Go to Thread](https://twitter.com/neilgcurrie/status/1574791025310121985) | [Go to code](https://github.com/neilcuz/threads/blob/master/0017_documenting-code-in-r/documenting-code-in-r.md) | | | 0016 | Creating a package in R | Steps on how to organise your analysis as a package | [Go to Thread](https://twitter.com/neilgcurrie/status/1572254358397681665) | No code thread only | | | 0015 | Unit testing in R | How to write unit tests in R | [Go to Thread](https://twitter.com/neilgcurrie/status/1569717576112181250) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0015_unit-testing-in-r/unit-testing-in-r.md) | | | 0014 | DuckDB in R | An intro to using DuckDB with R | [Go to Thread](https://twitter.com/neilgcurrie/status/1567543254668955653) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0014_duckdb-in-r/duckdb-in-r.md) | | | 0013 | Parquet Files in R | An intro to what parquet files are and how to use them in R | [Go to Thread](https://twitter.com/neilgcurrie/status/1565006543786954752) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0013_parquet-files-in-r/parquet-files-in-r.md) | | | 0012 | Data Wrangling with Arrow in R | Using the arrow package for manipulating big data with Apache Arrow in R | [Go to Thread](https://twitter.com/neilgcurrie/status/1554867200392998912) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0012_data-wrangling-with-arrow-in-r/data-wrangling-with-arrow-in-r.md) | | | 0011 | 8 Data Vis Tips with ggplot2 | Using ggplot2 to demonstrate some opinionated data vis tips | [Go to Thread](https://twitter.com/neilgcurrie/status/1553047716959117312) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0011_data-vis-tips-ggplot2/data-vis-tips-ggplot2.md) | | | 0010 | Dumbbell Plots | Using ggplot2 to build dumbbell plots | [Go to Thread](https://twitter.com/neilgcurrie/status/1550148635345620992) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0010_dumbbell-plots/dumbell-plots.md) | | | 0009 | Spreadsheets in R | Using the openxlsx package for building spreadsheets in R | [Go to Thread](https://twitter.com/neilgcurrie/status/1547974432009818114) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0009_spreadsheets-in-r/spreadsheets-in-r.md) | | | 0008 | Timing Code | Using Sys.time, the tictoc package and the microbenchmark package for timing code | [Go to Thread](https://twitter.com/neilgcurrie/status/1547249515408699392) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0008_timing-code/timing.md) | | | 0007 | Parallel Processing | Using the furrr package for iterating in parallel | [Go to Thread](https://twitter.com/neilgcurrie/status/1544351837901316096) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0007_parallel-processing/furrr.md) | | | 0006 | Joins with Spark in R | Using the sparklyr package for joining big data with Spark in R | [Go to Thread](https://twitter.com/neilgcurrie/status/1542538510833315840) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0006_joins-with-spark-in-r/spark3.md) | | | 0005 | Modelling with Spark in R | Using the sparklyr package for regression modelling on big data with Spark in R | [Go to Thread](https://twitter.com/neilgcurrie/status/1539658503249309709) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0005_modelling-with-spark-in-r/spark2.md) | | | 0004 | Data Wrangling with Spark in R | Using the sparklyr package for manipulating big data with Spark in R | [Go to Thread](https://twitter.com/neilgcurrie/status/1537102647924117504) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0004_data-wrangling-with-spark-in-r/thread-code.md) | | | 0003 | Classification Trees | Using the tidymodels suite of packages for training and testing classification trees | [Go to Thread](https://twitter.com/neilgcurrie/status/1534928350438756352) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0003_classification-trees/decision-trees_20220608.md) | | | 0002 | UUIDs | Using universally unique identifiers for datasets in R | [Go to Thread](https://twitter.com/neilgcurrie/status/1529126536229466112) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0002_uuids/uuid_20220523.md) | | | 0001 | SQLite in R | Using the RSQLite and DBI packages for creating, updating and quering a SQLite database from R | [Go to Thread](https://twitter.com/neilgcurrie/status/1527677516608991232) | [Go to Code](https://github.com/neilcuz/threads/blob/master/0001_sqlite/sqlite_20200520.md) | [Go to Video](https://youtu.be/4qBztqqDDic) |