Cleaning data: tidying excel worksheets embedded within a workbook
Channel: John Little
Date: 2022-10-18

code available at https://github.com/libjohn/workshop_rfun_iterate 
full video series -- playlist -- https://www.youtube.com/watch?v=PrUnbYlC1kY&list=PLIUcX1JrVUNWW7RgPh9ysmJM3mBpIAlYG

Using the case-study of data cleaning, this modular video series will demonstrate iteration with  purrr::map() and custom functions while also showing several Tidyverse tips and tricks.  This  penultimate, individual video (# 5), in the series presents iterating custom functions as a case study.  The challenge is importing select worksheet data found in an excel workbook which contains over fifty worksheets.  I want to import only two of the worksheets, and I want to import the data into a single tidy data frame.  This video episode is a stepping stone, or building block, for the final video in the #iterateFunctionsR series where I demonstrate how to replicate this process over multiple workbooks, each with them same confounding structure across all worksheets in all workbooks.  Each #IterateFunctionsR video will become progressively more fluent, using building-blocks to present intermediate data manipulation techniques in R and the Tidyverse.  

By the end of the series you'll learn how to use the purrr package, a very convenient package in support of iterating over list-columns and nested data frames.  purrr::map() iteration is often more convenient and efficient than a For-loop.  You'll also learn how to compose custom functions in R. 
 since R is a functional programming language, composing your own custom functions can increase your fluency as an R coder.  

Contents:
0:00 - introduction
3:01 - coding begins ; data cleaning ; tidy data
3:47 - importing messy excel reports ; data cleaning

Materials available at https://github.com/libjohn/workshop_rfun_iterate 
More Rfun at https://Rfun.library.duke.edu/ 
Part of the CDVS Workshop Series: http://library.duke.edu/data/