class: center, middle, inverse, title-slide <style type="text/css"> .remark-slide table{ border: none } .remark-slide-table { } tr:first-child { border-top: none; } tr:last-child { border-bottom: none; } </style> # Introduction to R for</br> Applied Epidemiology ### Welcome and introduction contact@appliedepi.org --- # Thank you for joining us **Thank you for your service to your community in these busy times.** We are glad that you are learning R with us. <img src="../../images/team.png" width="100%" /> ??? Do a brief round of introductions --- ## About Applied Epi .pull-left[ **“By epis, for epis”** A global **grassroots movement**, elevating frontline epidemiology. A **nonprofit** charity organization. We believe that public health's transition to R should be led by ground-level users. ] .pull-right[ <img src="../../images/welcome/team_locations.png" width="100%" /> **100** epidemiologists with **R expertise** and **ground-level** public health experience. ] .footnote[Meet [our team](https://appliedepi.org/about/people.html)] --- # R training courses **Synchronous** courses with **1-on-1 tutoring** and **follow-up support**. **Over 2200 epis at 400 agencies** have taken our intro course, including at US CDC, WHO, Doctors without Borders (MSF), national & local agencies, and FETPs. **Advanced courses** - See our advanced R courses on GIS, advanced automation, statistics, Git/Github, time series/outbreak detection, dashboards, and more! <img src="../../images/moz-banner.png" width="75%" height="75%" /> --- # The Epidemiologist R Handbook <img src="../../images/welcome/Epi R Handbook Banner Beige 1500x500.png" width="75%" /> - Freely available at **[www.epiRhandbook.com](www.epirhandbook.com)** - 50 chapters of **best-practice code examples** available online and offline - Used **4,000 times daily** by **1 million users** - Translated into Spanish, French, Portuguese, Vietnamese, Turkish, and more... > *"The epidemiologist greatest companion"* <br> - Epidemiologist, Nigeria CDC > *"[It] weaves together so much, so succinctly, and so incredibly clearly"* <br> - Epidemiologist, US CDC --- # 24/7 multilingual R Support Desk .pull-left[ **Book timely 1-on-1 calls with epidemiologist R technicians** > "Help that was fast and high quality - **a life saver**!” <br> -*Epi Advisor</br>Doctors without Borders* Used by hundreds of agencies including the Uganda Ministry of Health for Ebola response. ] .pull-right[ <img src="../../images/welcome/headphones.jpg" width="100%" height="75%" /> ] --- class: inverse, center, middle # Why learn R? --- # Learning R... ## ...is really useful <img src="../../images/welcome/stop_epidemic_dominoes2.png" width="75%" /> ??? Mention marketable skill as well as technically for epidemic response --- # Learning R... ## ...is freeing <img src="../../images/welcome/freedom_bird.png" width="50%" /> --- # Learning R... ## ...can be hard work <img src="../../images/welcome/missing_puzzle.png" width="50%" /> --- # Learning R... ## ...gives moments of pure joy <img src="../../images/welcome/joy.png" width="75%" /> --- # Learning R... ## ...is easier than ever .pull-left[ - Friendly user interface (RStudio) - More simple syntax ("tidyverse") - Books & blogs - Applied Epi's free resources: - **Epidemiologist R Handbook** - **Online tutorials** - **Case studies** - **Community forum** ] .pull-right[ <img src="../../images/welcome/tidyverse-icons.png" width="80%" /> ] ??? - There is a bit of a learning curve - as with any software. - But we are here to get you over that initial hump so you can keep developing. --- # Learning R... ## ...is more flexible <img src="../../images/welcome/interoperability.png" width="80%" /> ??? - R can read and write to loads of different software/databases. - Can hold multiple datasets at once - Can also produce many different outputs - Automated and reproducible workflows (saves you time and headache) --- # Learning R... ## ...automates routine tasks .pull-left[ * Data cleaning pipelines * Reports (Word, PDF, HTML...) * Slide presentations and dashboards * Maps (GIS) > "I actually have the time to *be an epidemiologist* now!" </br> - Course graduate, Haiti ] .pull-right[ <img src="../../images/welcome/automated_reports.png" width="344" height="80%" /> ] .footnote[*317 COVID-19 reports produced daily by Public Health England in 2020 (Image: Paula Blomquist)*] ??? - Producing reports at scale, an example from our EpiRHandbook colleague Paula - Not a fancy report, flat word document but caters to specific needs! - **Key example of local intelligence and no way could do without the power of R** --- # Learning R... ## ...makes brilliant data visualizations <img src="../../images/welcome/visualization.png" width="90%" /> ??? - Data viz essential to understand disease surveillance trends and outbreaks - **One of R's strongest features** - Network diagrams, maps, heat maps, integrated figures, the list goes on... --- # Learning R... ## ...calls upon your creative side <img src="../../images/welcome/artistic.png" width="100%" /> ??? Many people think about coding as creating artwork... for example creating pottery, writing poems, painting, etc. --- # Learning R... ## ...with a community of millions <img src="../../images/welcome/communities.png" width="100%" /> ??? - What is the largest community of R users in the world? R Ladies - Help communities exist in many places - we have our community forum ??? Community of people who support free software, open-access tools, and democratizing and equalizing data science --- class: inverse, center, middle # This course --- # Course objectives - Achieve basic competency in use of R for common public health tasks such as data management, data visualization, summary tables, and automated reports - Have experience applying R to a variety of datasets - Understand how R evolves and be equipped for sustained self-learning --- # Course schedule <div class="tabwid"><style>.cl-df15662c{table-layout:auto;}.cl-df031a6c{font-family:'Arial';font-size:11pt;font-weight:bold;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-df031a80{font-family:'Arial';font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-df0a6e5c{margin:0;text-align:left;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-df0a9c06{background-color:rgba(0, 205, 0, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c1a{background-color:rgba(0, 205, 0, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c24{background-color:rgba(0, 205, 0, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c25{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c2e{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c2f{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c38{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c39{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c42{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c43{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c4c{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c56{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c57{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c60{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c61{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c6a{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c6b{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c74{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c7e{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c7f{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c88{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c89{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c92{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c93{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c94{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c9c{background-color:rgba(255, 255, 255, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9c9d{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9ca6{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9cb0{background-color:rgba(204, 220, 231, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9cb1{background-color:transparent;vertical-align: middle;border-bottom: 0 solid rgba(255, 255, 255, 0.00);border-top: 0 solid rgba(255, 255, 255, 0.00);border-left: 0 solid rgba(255, 255, 255, 0.00);border-right: 0 solid rgba(255, 255, 255, 0.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9cb2{background-color:transparent;vertical-align: middle;border-bottom: 0 solid rgba(255, 255, 255, 0.00);border-top: 0 solid rgba(255, 255, 255, 0.00);border-left: 0 solid rgba(255, 255, 255, 0.00);border-right: 0 solid rgba(255, 255, 255, 0.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df0a9cba{background-color:transparent;vertical-align: middle;border-bottom: 0 solid rgba(255, 255, 255, 0.00);border-top: 0 solid rgba(255, 255, 255, 0.00);border-left: 0 solid rgba(255, 255, 255, 0.00);border-right: 0 solid rgba(255, 255, 255, 0.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}</style><table data-quarto-disable-processing='true' class='cl-df15662c'><thead><tr style="overflow-wrap:break-word;"><th class="cl-df0a9c06"><p class="cl-df0a6e5c"><span class="cl-df031a6c">Module</span></p></th><th class="cl-df0a9c1a"><p class="cl-df0a6e5c"><span class="cl-df031a6c">Topic</span></p></th><th class="cl-df0a9c24"><p class="cl-df0a6e5c"><span class="cl-df031a6c">1-on-1 Support</span><br><span class="cl-df031a6c">(24/7 availability)</span></p></th></tr></thead><tbody><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c25"><p class="cl-df0a6e5c"><span class="cl-df031a6c">Pre-course</span></p></td><td class="cl-df0a9c2e"><p class="cl-df0a6e5c"><span class="cl-df031a80">Installation troubleshooting</span></p></td><td class="cl-df0a9c2f"><p class="cl-df0a6e5c"><span class="cl-df031a80">Preparation calls</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c38"><p class="cl-df0a6e5c"><span class="cl-df031a6c">1</span></p></td><td class="cl-df0a9c39"><p class="cl-df0a6e5c"><span class="cl-df031a80">RStudio, basic R syntax</span></p></td><td rowspan="10"class="cl-df0a9c42"><p class="cl-df0a6e5c"><span class="cl-df031a80">Unlimited tutoring</span><br><span class="cl-df031a80">on course material</span><br><br><br><span class="cl-df031a80">After-hours booking</span><br><span class="cl-df031a80">link provided by email</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c43"><p class="cl-df0a6e5c"><span class="cl-df031a6c">2</span></p></td><td class="cl-df0a9c4c"><p class="cl-df0a6e5c"><span class="cl-df031a80">Data cleaning</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c43"><p class="cl-df0a6e5c"><span class="cl-df031a6c">3</span></p></td><td class="cl-df0a9c4c"><p class="cl-df0a6e5c"><span class="cl-df031a80">More complex data cleaning</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c57"><p class="cl-df0a6e5c"><span class="cl-df031a6c">4</span></p></td><td class="cl-df0a9c60"><p class="cl-df0a6e5c"><span class="cl-df031a80">Grouping and summarising data</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c6a"><p class="cl-df0a6e5c"><span class="cl-df031a6c">5</span></p></td><td class="cl-df0a9c6b"><p class="cl-df0a6e5c"><span class="cl-df031a80">Data visualization with ggplot2</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c43"><p class="cl-df0a6e5c"><span class="cl-df031a6c">6</span></p></td><td class="cl-df0a9c4c"><p class="cl-df0a6e5c"><span class="cl-df031a80">Troubleshooting and getting help</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c7e"><p class="cl-df0a6e5c"><span class="cl-df031a6c">7</span></p></td><td class="cl-df0a9c7f"><p class="cl-df0a6e5c"><span class="cl-df031a80">Automated reports with R Markdown</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c57"><p class="cl-df0a6e5c"><span class="cl-df031a6c">8</span></p></td><td class="cl-df0a9c60"><p class="cl-df0a6e5c"><span class="cl-df031a80">Transforming data with joins and pivots</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c89"><p class="cl-df0a6e5c"><span class="cl-df031a6c">9</span></p></td><td class="cl-df0a9c92"><p class="cl-df0a6e5c"><span class="cl-df031a80">Public health plots: Heat plots, epi curves,</span><br><span class="cl-df031a80">age/sex pyramids, & GIS demo</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9c94"><p class="cl-df0a6e5c"><span class="cl-df031a6c">10</span></p></td><td class="cl-df0a9c9c"><p class="cl-df0a6e5c"><span class="cl-df031a80">COVID-19 case study</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df0a9ca6"><p class="cl-df0a6e5c"><span class="cl-df031a6c">Post-course</span></p></td><td class="cl-df0a9cb0"><p class="cl-df0a6e5c"><span class="cl-df031a80">We help you apply R to your work.</span><br><span class="cl-df031a80">1 hour coupon valid 12 months.*</span></p></td><td class="cl-df0a9c93"><p class="cl-df0a6e5c"><span class="cl-df031a80">R Support Desk</span></p></td></tr></tbody><tfoot><tr style="overflow-wrap:break-word;"><td colspan="3"class="cl-df0a9cb1"><p class="cl-df0a6e5c"><span class="cl-df031a80">*Coupon time and duration may vary by cohort. Additional time can be purchased.</span></p></td></tr></tfoot></table></div> --- # Data used in this course * **Module 1: Monitoring COVID-19 testing supplies** * **Modules 2 - 9: Ebola outbreak case study** * Surveillance case linelist (primary dataset) * Hospital records from 5 hospitals * Case investigation dataset * Lab results dataset * **Module 10: COVID-19 outbreak and population datasets** .footnote[All course data are either anonymized/jittered or simulated.] --- # Each module - **Slides**: A brief explanation of new concepts & code - **Demo**: Live coding demonstration of the new material - **Exercises**: Online exercises guide you to write R code on your computer * *Quiz questions* check your understanding * *1-on-1 meetings* with instructors (request at any time) * *Share your screen*, so we catch errors early and invite you to side room * *It is OK to not finish*. Solutions are available in the course folder. * *Take breaks* as you need - **Debrief**: A live coding review and tips from the instructors - **Post-module**: Resources are available to you * *Recordings* are on the course website * *1-on-1 tutoring* on course material (booking link provided by email) --- # Certificate To receive a certificate of completion, you must: 1) **Attend 80% of the sessions** (or make them up with course tutoring) 2) **Complete the anonymous feedback survey** 3) **Submit an email to training@appliedepi.org** with: * The link to your practice post in our community forum (Module 6) * Your R script from the COVID-19 case study (Module 10) --- # Agreement with each other **Our team will:** - Create a supportive & personalized learning space - Appreciate your expertise -- **We hope that you will:** - Reach outside of your comfort zone *(you might discover a new passion!)* - Tell us if you do not understand and catch-up if you miss a session ??? We are in this course to succeed, together --- # This module **Objectives** Within an RStudio project, write basic R code to: * Perform calculations * Create and change objects * Use functions * Install and load packages * Import and inspect a dataset </br> <div class="tabwid"><style>.cl-df546ce6{}.cl-df4306e0{font-family:'Arial';font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-df49c7fa{margin:0;text-align:left;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-df49f324{width:1.033in;background-color:transparent;vertical-align: middle;border-bottom: 1.5pt solid rgba(102, 102, 102, 1.00);border-top: 1.5pt solid rgba(102, 102, 102, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df49f32e{width:2.468in;background-color:transparent;vertical-align: middle;border-bottom: 1.5pt solid rgba(102, 102, 102, 1.00);border-top: 1.5pt solid rgba(102, 102, 102, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df49f32f{width:1.033in;background-color:transparent;vertical-align: middle;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df49f338{width:2.468in;background-color:transparent;vertical-align: middle;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df49f339{width:1.033in;background-color:transparent;vertical-align: middle;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df49f33a{width:2.468in;background-color:transparent;vertical-align: middle;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df49f342{width:1.033in;background-color:transparent;vertical-align: middle;border-bottom: 1.5pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df49f34c{width:2.468in;background-color:transparent;vertical-align: middle;border-bottom: 1.5pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df49f34d{width:1.033in;background-color:transparent;vertical-align: middle;border-bottom: 0 solid rgba(255, 255, 255, 0.00);border-top: 0 solid rgba(255, 255, 255, 0.00);border-left: 0 solid rgba(255, 255, 255, 0.00);border-right: 0 solid rgba(255, 255, 255, 0.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-df49f34e{width:2.468in;background-color:transparent;vertical-align: middle;border-bottom: 0 solid rgba(255, 255, 255, 0.00);border-top: 0 solid rgba(255, 255, 255, 0.00);border-left: 0 solid rgba(255, 255, 255, 0.00);border-right: 0 solid rgba(255, 255, 255, 0.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}</style><table data-quarto-disable-processing='true' class='cl-df546ce6'><thead><tr style="overflow-wrap:break-word;"><th class="cl-df49f324"><p class="cl-df49c7fa"><span class="cl-df4306e0">Time</span></p></th><th class="cl-df49f32e"><p class="cl-df49c7fa"><span class="cl-df4306e0">Topic</span></p></th></tr></thead><tbody><tr style="overflow-wrap:break-word;"><td class="cl-df49f32f"><p class="cl-df49c7fa"><span class="cl-df4306e0">45 minutes</span></p></td><td class="cl-df49f338"><p class="cl-df49c7fa"><span class="cl-df4306e0">Welcome & course logistics</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df49f32f"><p class="cl-df49c7fa"><span class="cl-df4306e0">30 minutes</span></p></td><td class="cl-df49f338"><p class="cl-df49c7fa"><span class="cl-df4306e0">RStudio tour and basic R syntax</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df49f339"><p class="cl-df49c7fa"><span class="cl-df4306e0">2 hours</span></p></td><td class="cl-df49f33a"><p class="cl-df49c7fa"><span class="cl-df4306e0">Exercise</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-df49f342"><p class="cl-df49c7fa"><span class="cl-df4306e0">15 minutes</span></p></td><td class="cl-df49f34c"><p class="cl-df49c7fa"><span class="cl-df4306e0">Debrief</span></p></td></tr></tbody><tfoot><tr style="overflow-wrap:break-word;"><td colspan="2"class="cl-df49f34d"><p class="cl-df49c7fa"><span class="cl-df4306e0">Take breaks as you wish during the exercise</span></p></td></tr></tfoot></table></div> ??? Note stretch breaks throughout. --- # RStudio projects .pull-left[ Your work occurs in **RStudio projects**. A project is a **self-contained and portable R working environment** They make your life immensely easier. <img src="../../images/functions_packages/project_briefcase.png" width="85%" /> ] -- .pull-right[ This course is organized in 3 projects. **Each project is a folder for a distinct outbreak or analysis**, containing data, scripts, outputs, and ".Rproj" file. 📂 intro_course * 📁 **module1** * module1.Rproj * 📝 data.csv * 📝 analysis.R * 📂 **ebola** * ebola.Rproj * 📂 **covid** * covid.Rproj ] ??? We will help You can zip the folder and share it with a colleague, it can be hosted on a shared drive, and can be synced with a Github repository. --- class: inverse, center, middle # Live demonstration ## RStudio and basic syntax <img src="../../images/functions_packages/piano_man.jpg" width="50%" /> --- class: inverse, center, middle .pull-left[ ## Functions: ## Tools to accomplish a specific task ] .pull-right[ <img src="../../images/functions_packages/function_tools_pliers.png" width="75%" /> ] --- # Functions ### Inputs and outputs - A function is like a machine that: - Receives inputs - Does some action with the inputs - Returns an output -- - Functions have a name (*hopefully intuitive!*), and have parentheses ( ) * `print()` helps you print an R object * `mean()` averages some values * `filter()` removes certain rows in a dataset using logical criteria .footnote[functions also appear in Excel as *equations*] --- # Does this look familiar? <img src="../../images/functions_packages/excel_functions.png" width="50%" /> R **functions** are similar to Excel **equations** * They accept inputs within **parentheses** * The inputs are separated by **commas** --- # Simple R functions .pull-left[ - `sqrt()` * Accepts one numeric value as input, returns the square root ] .pull-right[ ```r sqrt(49) ``` ``` ## [1] 7 ``` ] .footnote[Accepts numeric values and returns the maximum] ??? Demonstrate each `sqrt(49)`, `sqrt(12)`, `max(1, 15, 2, 9)` (explain commas) Explain vectors `c(1, 15, 2, 9)` and a named vector `cities <- c("Wuhan", "Milan", "New York")` Quickly note indexed vectors `cities[[2]]` and numeric: `ages <- c(15, 28, 100, 15, 65, 4, 10)` then `summary(ages)` and `summary(ages)[2]` and `summary(ages)[[2]]` --- # Simple R functions .pull-left[ - `sqrt()` * Accepts one numeric value as input, returns the square root - `max()` * Accepts numeric values and returns the maximum ] .pull-right[ ```r sqrt(49) ``` ``` ## [1] 7 ``` <br> ```r max(2, 10, 15, 200, 9) ``` ``` ## [1] 200 ``` ] .footnote[These are examples of functions in "*base R*" - functions that come installed with R.] ??? Demonstrate each `sqrt(49)`, `sqrt(12)`, `max(1, 15, 2, 9)` (explain commas) Explain vectors `c(1, 15, 2, 9)` and a named vector `cities <- c("Wuhan", "Milan", "New York")` Quickly note indexed vectors `cities[[2]]` and numeric: `ages <- c(15, 28, 100, 15, 65, 4, 10)` then `summary(ages)` and `summary(ages)[2]` and `summary(ages)[[2]]` --- # Simple R functions .pull-left[ - `sqrt()` * Accepts one numeric value as input, returns the square root <br> - `max()` * Accepts numeric values and returns the maximum <br> - `c()` * Shorthand for "concatenate" * Combines inputs into a *vector* ] .pull-right[ ```r sqrt(49) ``` ``` ## [1] 7 ``` <br> ```r max(2, 10, 15, 200, 9) ``` ``` ## [1] 200 ``` ```r c(2, 5, 9, 12, 47) ``` ``` ## [1] 2 5 9 12 47 ``` ] ??? Demonstrate each `sqrt(49)`, `sqrt(12)`, `max(1, 15, 2, 9)` (explain commas) Explain vectors `c(1, 15, 2, 9)` and a named vector `cities <- c("Wuhan", "Milan", "New York")` Quickly note indexed vectors `cities[[2]]` and numeric: `ages <- c(15, 28, 100, 15, 65, 4, 10)` then `summary(ages)` and `summary(ages)[2]` and `summary(ages)[[2]]` --- # Arguments .pull-left[ But most functions are not so simple. </br> They must be told *how* to work, and *on what* to work. </br> You use the function's **arguments** to specify these values. </br> Arguments are like inputs and settings, with *names* ] .pull-right[ <img src="../../images/functions_packages/arguments-buttons.png" width="100%" /> ] --- # This may look familiar <img src="../../images/functions_packages/excel_arguments.png" width="50%" /> Once again, Excel is not so different from R: * Arguments have names and are separated by commas * Values can be numeric (12), character ("Apple"), or other objects (A1:A5) * Some arguments are optional or have defaults ??? What is returned by this Excel equation? --- # Baking example -- Let us pretend that **`oven_bake()`** is a function used to bake bread. What *arguments* might this function take? Hint: Which *settings* must be adjusted? What *object* must be put in the oven? -- <img src="../../images/functions_packages/Function_Bread_Example_en.png" width="100%" /> --- # `tbl_cross()` example .pull-left[ This dataset in R has the name **`surv`**. We want a cross-tabulation of columns `case_def` and `sex`. <div class="tabwid"><style>.cl-e0411dca{}.cl-e0346d3c{font-family:'Arial';font-size:11pt;font-weight:bold;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e0346d50{font-family:'Arial';font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e0399d7a{margin:0;text-align:right;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e0399d8e{margin:0;text-align:left;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e039ba8a{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039ba94{width:0.99in;background-color:rgba(255, 255, 0, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039ba95{width:0.744in;background-color:rgba(255, 255, 0, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039ba9e{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039ba9f{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039baa8{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039bab2{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039bab3{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039babc{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039bac6{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039bac7{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039bad0{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039bad1{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e039bad2{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}</style><table data-quarto-disable-processing='true' class='cl-e0411dca'><thead><tr style="overflow-wrap:break-word;"><th class="cl-e039ba8a"><p class="cl-e0399d7a"><span class="cl-e0346d3c">case</span></p></th><th class="cl-e039ba94"><p class="cl-e0399d8e"><span class="cl-e0346d3c">case_def</span></p></th><th class="cl-e039ba95"><p class="cl-e0399d8e"><span class="cl-e0346d3c">sex</span></p></th><th class="cl-e039ba9e"><p class="cl-e0399d7a"><span class="cl-e0346d3c">age</span></p></th></tr></thead><tbody><tr style="overflow-wrap:break-word;"><td class="cl-e039ba9f"><p class="cl-e0399d7a"><span class="cl-e0346d50">1</span></p></td><td class="cl-e039baa8"><p class="cl-e0399d8e"><span class="cl-e0346d50">Confirmed</span></p></td><td class="cl-e039bab2"><p class="cl-e0399d8e"><span class="cl-e0346d50">female</span></p></td><td class="cl-e039bab3"><p class="cl-e0399d7a"><span class="cl-e0346d50">1</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e039babc"><p class="cl-e0399d7a"><span class="cl-e0346d50">2</span></p></td><td class="cl-e039bac6"><p class="cl-e0399d8e"><span class="cl-e0346d50">Confirmed</span></p></td><td class="cl-e039bac7"><p class="cl-e0399d8e"><span class="cl-e0346d50">male</span></p></td><td class="cl-e039bad0"><p class="cl-e0399d7a"><span class="cl-e0346d50">16</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e039ba8a"><p class="cl-e0399d7a"><span class="cl-e0346d50">3</span></p></td><td class="cl-e039bad1"><p class="cl-e0399d8e"><span class="cl-e0346d50">Suspect</span></p></td><td class="cl-e039bad2"><p class="cl-e0399d8e"><span class="cl-e0346d50">female</span></p></td><td class="cl-e039ba9e"><p class="cl-e0399d7a"><span class="cl-e0346d50">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e039ba8a"><p class="cl-e0399d7a"><span class="cl-e0346d50">4</span></p></td><td class="cl-e039bad1"><p class="cl-e0399d8e"><span class="cl-e0346d50">Suspect</span></p></td><td class="cl-e039bad2"><p class="cl-e0399d8e"><span class="cl-e0346d50">female</span></p></td><td class="cl-e039ba9e"><p class="cl-e0399d7a"><span class="cl-e0346d50">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e039babc"><p class="cl-e0399d7a"><span class="cl-e0346d50">5</span></p></td><td class="cl-e039bac6"><p class="cl-e0399d8e"><span class="cl-e0346d50">Confirmed</span></p></td><td class="cl-e039bac7"><p class="cl-e0399d8e"><span class="cl-e0346d50">male</span></p></td><td class="cl-e039bad0"><p class="cl-e0399d7a"><span class="cl-e0346d50">64</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e039babc"><p class="cl-e0399d7a"><span class="cl-e0346d50">6</span></p></td><td class="cl-e039bac6"><p class="cl-e0399d8e"><span class="cl-e0346d50">Confirmed</span></p></td><td class="cl-e039bac7"><p class="cl-e0399d8e"><span class="cl-e0346d50">male</span></p></td><td class="cl-e039bad0"><p class="cl-e0399d7a"><span class="cl-e0346d50">8</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e039babc"><p class="cl-e0399d7a"><span class="cl-e0346d50">7</span></p></td><td class="cl-e039bac6"><p class="cl-e0399d8e"><span class="cl-e0346d50">Confirmed</span></p></td><td class="cl-e039bac7"><p class="cl-e0399d8e"><span class="cl-e0346d50">female</span></p></td><td class="cl-e039bad0"><p class="cl-e0399d7a"><span class="cl-e0346d50">22</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e039babc"><p class="cl-e0399d7a"><span class="cl-e0346d50">8</span></p></td><td class="cl-e039bac6"><p class="cl-e0399d8e"><span class="cl-e0346d50">Confirmed</span></p></td><td class="cl-e039bac7"><p class="cl-e0399d8e"><span class="cl-e0346d50">female</span></p></td><td class="cl-e039bad0"><p class="cl-e0399d7a"><span class="cl-e0346d50">31</span></p></td></tr></tbody></table></div> ] -- .pull-right[ The function `tbl_cross()` has three arguments: ```r tbl_cross(data =, row =, col = ) ``` ] --- # `tbl_cross()` example .pull-left[ This dataset in R has the name **`surv`**. We want a cross-tabulation of columns `case_def` and `sex`. <div class="tabwid"><style>.cl-e0810692{}.cl-e0758c40{font-family:'Arial';font-size:11pt;font-weight:bold;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e0758c4a{font-family:'Arial';font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e079eb6e{margin:0;text-align:right;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e079eb82{margin:0;text-align:left;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e07a082e{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a0838{width:0.99in;background-color:rgba(255, 255, 0, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a0839{width:0.744in;background-color:rgba(255, 255, 0, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a0842{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a0843{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a084c{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a0856{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a0857{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a0860{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a0861{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a086a{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a086b{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a0874{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e07a0875{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}</style><table data-quarto-disable-processing='true' class='cl-e0810692'><thead><tr style="overflow-wrap:break-word;"><th class="cl-e07a082e"><p class="cl-e079eb6e"><span class="cl-e0758c40">case</span></p></th><th class="cl-e07a0838"><p class="cl-e079eb82"><span class="cl-e0758c40">case_def</span></p></th><th class="cl-e07a0839"><p class="cl-e079eb82"><span class="cl-e0758c40">sex</span></p></th><th class="cl-e07a0842"><p class="cl-e079eb6e"><span class="cl-e0758c40">age</span></p></th></tr></thead><tbody><tr style="overflow-wrap:break-word;"><td class="cl-e07a0843"><p class="cl-e079eb6e"><span class="cl-e0758c4a">1</span></p></td><td class="cl-e07a084c"><p class="cl-e079eb82"><span class="cl-e0758c4a">Confirmed</span></p></td><td class="cl-e07a0856"><p class="cl-e079eb82"><span class="cl-e0758c4a">female</span></p></td><td class="cl-e07a0857"><p class="cl-e079eb6e"><span class="cl-e0758c4a">1</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e07a0860"><p class="cl-e079eb6e"><span class="cl-e0758c4a">2</span></p></td><td class="cl-e07a0861"><p class="cl-e079eb82"><span class="cl-e0758c4a">Confirmed</span></p></td><td class="cl-e07a086a"><p class="cl-e079eb82"><span class="cl-e0758c4a">male</span></p></td><td class="cl-e07a086b"><p class="cl-e079eb6e"><span class="cl-e0758c4a">16</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e07a082e"><p class="cl-e079eb6e"><span class="cl-e0758c4a">3</span></p></td><td class="cl-e07a0874"><p class="cl-e079eb82"><span class="cl-e0758c4a">Suspect</span></p></td><td class="cl-e07a0875"><p class="cl-e079eb82"><span class="cl-e0758c4a">female</span></p></td><td class="cl-e07a0842"><p class="cl-e079eb6e"><span class="cl-e0758c4a">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e07a082e"><p class="cl-e079eb6e"><span class="cl-e0758c4a">4</span></p></td><td class="cl-e07a0874"><p class="cl-e079eb82"><span class="cl-e0758c4a">Suspect</span></p></td><td class="cl-e07a0875"><p class="cl-e079eb82"><span class="cl-e0758c4a">female</span></p></td><td class="cl-e07a0842"><p class="cl-e079eb6e"><span class="cl-e0758c4a">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e07a0860"><p class="cl-e079eb6e"><span class="cl-e0758c4a">5</span></p></td><td class="cl-e07a0861"><p class="cl-e079eb82"><span class="cl-e0758c4a">Confirmed</span></p></td><td class="cl-e07a086a"><p class="cl-e079eb82"><span class="cl-e0758c4a">male</span></p></td><td class="cl-e07a086b"><p class="cl-e079eb6e"><span class="cl-e0758c4a">64</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e07a0860"><p class="cl-e079eb6e"><span class="cl-e0758c4a">6</span></p></td><td class="cl-e07a0861"><p class="cl-e079eb82"><span class="cl-e0758c4a">Confirmed</span></p></td><td class="cl-e07a086a"><p class="cl-e079eb82"><span class="cl-e0758c4a">male</span></p></td><td class="cl-e07a086b"><p class="cl-e079eb6e"><span class="cl-e0758c4a">8</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e07a0860"><p class="cl-e079eb6e"><span class="cl-e0758c4a">7</span></p></td><td class="cl-e07a0861"><p class="cl-e079eb82"><span class="cl-e0758c4a">Confirmed</span></p></td><td class="cl-e07a086a"><p class="cl-e079eb82"><span class="cl-e0758c4a">female</span></p></td><td class="cl-e07a086b"><p class="cl-e079eb6e"><span class="cl-e0758c4a">22</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e07a0860"><p class="cl-e079eb6e"><span class="cl-e0758c4a">8</span></p></td><td class="cl-e07a0861"><p class="cl-e079eb82"><span class="cl-e0758c4a">Confirmed</span></p></td><td class="cl-e07a086a"><p class="cl-e079eb82"><span class="cl-e0758c4a">female</span></p></td><td class="cl-e07a086b"><p class="cl-e079eb6e"><span class="cl-e0758c4a">31</span></p></td></tr></tbody></table></div> ] .pull-right[ The command can also be written more vertically, like this: ```r tbl_cross( data = row = col = ) ``` ] --- # `tbl_cross()` example .pull-left[ This dataset in R has the name **`surv`**. We want a cross-tabulation of columns `case_def` and `sex`. <div class="tabwid"><style>.cl-e0c2aac0{}.cl-e0b545a6{font-family:'Arial';font-size:11pt;font-weight:bold;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e0b545ba{font-family:'Arial';font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e0baddb8{margin:0;text-align:right;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e0baddcc{margin:0;text-align:left;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e0bb0572{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb0586{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb0587{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb0590{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb059a{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb059b{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb05a4{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb05a5{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb05a6{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb05ae{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb05af{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e0bb05b8{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}</style><table data-quarto-disable-processing='true' class='cl-e0c2aac0'><thead><tr style="overflow-wrap:break-word;"><th class="cl-e0bb0572"><p class="cl-e0baddb8"><span class="cl-e0b545a6">case</span></p></th><th class="cl-e0bb0586"><p class="cl-e0baddcc"><span class="cl-e0b545a6">case_def</span></p></th><th class="cl-e0bb0587"><p class="cl-e0baddcc"><span class="cl-e0b545a6">sex</span></p></th><th class="cl-e0bb0590"><p class="cl-e0baddb8"><span class="cl-e0b545a6">age</span></p></th></tr></thead><tbody><tr style="overflow-wrap:break-word;"><td class="cl-e0bb059a"><p class="cl-e0baddb8"><span class="cl-e0b545ba">1</span></p></td><td class="cl-e0bb059b"><p class="cl-e0baddcc"><span class="cl-e0b545ba">Confirmed</span></p></td><td class="cl-e0bb05a4"><p class="cl-e0baddcc"><span class="cl-e0b545ba">female</span></p></td><td class="cl-e0bb05a5"><p class="cl-e0baddb8"><span class="cl-e0b545ba">1</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e0bb05a6"><p class="cl-e0baddb8"><span class="cl-e0b545ba">2</span></p></td><td class="cl-e0bb05ae"><p class="cl-e0baddcc"><span class="cl-e0b545ba">Confirmed</span></p></td><td class="cl-e0bb05af"><p class="cl-e0baddcc"><span class="cl-e0b545ba">male</span></p></td><td class="cl-e0bb05b8"><p class="cl-e0baddb8"><span class="cl-e0b545ba">16</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e0bb0572"><p class="cl-e0baddb8"><span class="cl-e0b545ba">3</span></p></td><td class="cl-e0bb0586"><p class="cl-e0baddcc"><span class="cl-e0b545ba">Suspect</span></p></td><td class="cl-e0bb0587"><p class="cl-e0baddcc"><span class="cl-e0b545ba">female</span></p></td><td class="cl-e0bb0590"><p class="cl-e0baddb8"><span class="cl-e0b545ba">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e0bb0572"><p class="cl-e0baddb8"><span class="cl-e0b545ba">4</span></p></td><td class="cl-e0bb0586"><p class="cl-e0baddcc"><span class="cl-e0b545ba">Suspect</span></p></td><td class="cl-e0bb0587"><p class="cl-e0baddcc"><span class="cl-e0b545ba">female</span></p></td><td class="cl-e0bb0590"><p class="cl-e0baddb8"><span class="cl-e0b545ba">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e0bb05a6"><p class="cl-e0baddb8"><span class="cl-e0b545ba">5</span></p></td><td class="cl-e0bb05ae"><p class="cl-e0baddcc"><span class="cl-e0b545ba">Confirmed</span></p></td><td class="cl-e0bb05af"><p class="cl-e0baddcc"><span class="cl-e0b545ba">male</span></p></td><td class="cl-e0bb05b8"><p class="cl-e0baddb8"><span class="cl-e0b545ba">64</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e0bb05a6"><p class="cl-e0baddb8"><span class="cl-e0b545ba">6</span></p></td><td class="cl-e0bb05ae"><p class="cl-e0baddcc"><span class="cl-e0b545ba">Confirmed</span></p></td><td class="cl-e0bb05af"><p class="cl-e0baddcc"><span class="cl-e0b545ba">male</span></p></td><td class="cl-e0bb05b8"><p class="cl-e0baddb8"><span class="cl-e0b545ba">8</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e0bb05a6"><p class="cl-e0baddb8"><span class="cl-e0b545ba">7</span></p></td><td class="cl-e0bb05ae"><p class="cl-e0baddcc"><span class="cl-e0b545ba">Confirmed</span></p></td><td class="cl-e0bb05af"><p class="cl-e0baddcc"><span class="cl-e0b545ba">female</span></p></td><td class="cl-e0bb05b8"><p class="cl-e0baddb8"><span class="cl-e0b545ba">22</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e0bb05a6"><p class="cl-e0baddb8"><span class="cl-e0b545ba">8</span></p></td><td class="cl-e0bb05ae"><p class="cl-e0baddcc"><span class="cl-e0b545ba">Confirmed</span></p></td><td class="cl-e0bb05af"><p class="cl-e0baddcc"><span class="cl-e0b545ba">female</span></p></td><td class="cl-e0bb05b8"><p class="cl-e0baddb8"><span class="cl-e0b545ba">31</span></p></td></tr></tbody></table></div> ] .pull-right[ The dataset that we want to use is named **surv** ```r tbl_cross( * data = surv, row = col = ) ``` *In R, you must tell R which dataset to use, because you can store multiple*. ] --- # `tbl_cross()` example .pull-left[ This dataset in R has the name **`surv`**. We want a cross-tabulation of columns `case_def` and `sex`. <div class="tabwid"><style>.cl-e1066d64{}.cl-e0fd0346{font-family:'Arial';font-size:11pt;font-weight:bold;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e0fd0350{font-family:'Arial';font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e100d926{margin:0;text-align:right;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e100d93a{margin:0;text-align:left;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e100f258{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f262{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f263{width:0.744in;background-color:rgba(255, 255, 0, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f26c{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f26d{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f276{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f277{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f278{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f280{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f281{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f282{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f28a{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e100f28b{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}</style><table data-quarto-disable-processing='true' class='cl-e1066d64'><thead><tr style="overflow-wrap:break-word;"><th class="cl-e100f258"><p class="cl-e100d926"><span class="cl-e0fd0346">case</span></p></th><th class="cl-e100f262"><p class="cl-e100d93a"><span class="cl-e0fd0346">case_def</span></p></th><th class="cl-e100f263"><p class="cl-e100d93a"><span class="cl-e0fd0346">sex</span></p></th><th class="cl-e100f26c"><p class="cl-e100d926"><span class="cl-e0fd0346">age</span></p></th></tr></thead><tbody><tr style="overflow-wrap:break-word;"><td class="cl-e100f26d"><p class="cl-e100d926"><span class="cl-e0fd0350">1</span></p></td><td class="cl-e100f276"><p class="cl-e100d93a"><span class="cl-e0fd0350">Confirmed</span></p></td><td class="cl-e100f277"><p class="cl-e100d93a"><span class="cl-e0fd0350">female</span></p></td><td class="cl-e100f278"><p class="cl-e100d926"><span class="cl-e0fd0350">1</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e100f280"><p class="cl-e100d926"><span class="cl-e0fd0350">2</span></p></td><td class="cl-e100f281"><p class="cl-e100d93a"><span class="cl-e0fd0350">Confirmed</span></p></td><td class="cl-e100f282"><p class="cl-e100d93a"><span class="cl-e0fd0350">male</span></p></td><td class="cl-e100f28a"><p class="cl-e100d926"><span class="cl-e0fd0350">16</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e100f258"><p class="cl-e100d926"><span class="cl-e0fd0350">3</span></p></td><td class="cl-e100f262"><p class="cl-e100d93a"><span class="cl-e0fd0350">Suspect</span></p></td><td class="cl-e100f28b"><p class="cl-e100d93a"><span class="cl-e0fd0350">female</span></p></td><td class="cl-e100f26c"><p class="cl-e100d926"><span class="cl-e0fd0350">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e100f258"><p class="cl-e100d926"><span class="cl-e0fd0350">4</span></p></td><td class="cl-e100f262"><p class="cl-e100d93a"><span class="cl-e0fd0350">Suspect</span></p></td><td class="cl-e100f28b"><p class="cl-e100d93a"><span class="cl-e0fd0350">female</span></p></td><td class="cl-e100f26c"><p class="cl-e100d926"><span class="cl-e0fd0350">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e100f280"><p class="cl-e100d926"><span class="cl-e0fd0350">5</span></p></td><td class="cl-e100f281"><p class="cl-e100d93a"><span class="cl-e0fd0350">Confirmed</span></p></td><td class="cl-e100f282"><p class="cl-e100d93a"><span class="cl-e0fd0350">male</span></p></td><td class="cl-e100f28a"><p class="cl-e100d926"><span class="cl-e0fd0350">64</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e100f280"><p class="cl-e100d926"><span class="cl-e0fd0350">6</span></p></td><td class="cl-e100f281"><p class="cl-e100d93a"><span class="cl-e0fd0350">Confirmed</span></p></td><td class="cl-e100f282"><p class="cl-e100d93a"><span class="cl-e0fd0350">male</span></p></td><td class="cl-e100f28a"><p class="cl-e100d926"><span class="cl-e0fd0350">8</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e100f280"><p class="cl-e100d926"><span class="cl-e0fd0350">7</span></p></td><td class="cl-e100f281"><p class="cl-e100d93a"><span class="cl-e0fd0350">Confirmed</span></p></td><td class="cl-e100f282"><p class="cl-e100d93a"><span class="cl-e0fd0350">female</span></p></td><td class="cl-e100f28a"><p class="cl-e100d926"><span class="cl-e0fd0350">22</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e100f280"><p class="cl-e100d926"><span class="cl-e0fd0350">8</span></p></td><td class="cl-e100f281"><p class="cl-e100d93a"><span class="cl-e0fd0350">Confirmed</span></p></td><td class="cl-e100f282"><p class="cl-e100d93a"><span class="cl-e0fd0350">female</span></p></td><td class="cl-e100f28a"><p class="cl-e100d926"><span class="cl-e0fd0350">31</span></p></td></tr></tbody></table></div> ] .pull-right[ The *rows* of the cross-table should come from the column **`sex`** ```r tbl_cross( data = surv, * row = sex, col = ) ``` ] --- # `tbl_cross()` example .pull-left[ This dataset in R has the name **`surv`**. We want a cross-tabulation of columns `case_def` and `sex`. <div class="tabwid"><style>.cl-e1319124{}.cl-e1289808{font-family:'Arial';font-size:11pt;font-weight:bold;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e1289812{font-family:'Arial';font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e12c60a0{margin:0;text-align:right;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e12c60b4{margin:0;text-align:left;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e12c7bda{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7be4{width:0.99in;background-color:rgba(255, 255, 0, 1.00);vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7bee{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7bef{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7bf8{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7c02{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7c03{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7c0c{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7c0d{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7c16{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7c20{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7c2a{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e12c7c34{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}</style><table data-quarto-disable-processing='true' class='cl-e1319124'><thead><tr style="overflow-wrap:break-word;"><th class="cl-e12c7bda"><p class="cl-e12c60a0"><span class="cl-e1289808">case</span></p></th><th class="cl-e12c7be4"><p class="cl-e12c60b4"><span class="cl-e1289808">case_def</span></p></th><th class="cl-e12c7bee"><p class="cl-e12c60b4"><span class="cl-e1289808">sex</span></p></th><th class="cl-e12c7bef"><p class="cl-e12c60a0"><span class="cl-e1289808">age</span></p></th></tr></thead><tbody><tr style="overflow-wrap:break-word;"><td class="cl-e12c7bf8"><p class="cl-e12c60a0"><span class="cl-e1289812">1</span></p></td><td class="cl-e12c7c02"><p class="cl-e12c60b4"><span class="cl-e1289812">Confirmed</span></p></td><td class="cl-e12c7c03"><p class="cl-e12c60b4"><span class="cl-e1289812">female</span></p></td><td class="cl-e12c7c0c"><p class="cl-e12c60a0"><span class="cl-e1289812">1</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e12c7c0d"><p class="cl-e12c60a0"><span class="cl-e1289812">2</span></p></td><td class="cl-e12c7c16"><p class="cl-e12c60b4"><span class="cl-e1289812">Confirmed</span></p></td><td class="cl-e12c7c20"><p class="cl-e12c60b4"><span class="cl-e1289812">male</span></p></td><td class="cl-e12c7c2a"><p class="cl-e12c60a0"><span class="cl-e1289812">16</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e12c7bda"><p class="cl-e12c60a0"><span class="cl-e1289812">3</span></p></td><td class="cl-e12c7c34"><p class="cl-e12c60b4"><span class="cl-e1289812">Suspect</span></p></td><td class="cl-e12c7bee"><p class="cl-e12c60b4"><span class="cl-e1289812">female</span></p></td><td class="cl-e12c7bef"><p class="cl-e12c60a0"><span class="cl-e1289812">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e12c7bda"><p class="cl-e12c60a0"><span class="cl-e1289812">4</span></p></td><td class="cl-e12c7c34"><p class="cl-e12c60b4"><span class="cl-e1289812">Suspect</span></p></td><td class="cl-e12c7bee"><p class="cl-e12c60b4"><span class="cl-e1289812">female</span></p></td><td class="cl-e12c7bef"><p class="cl-e12c60a0"><span class="cl-e1289812">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e12c7c0d"><p class="cl-e12c60a0"><span class="cl-e1289812">5</span></p></td><td class="cl-e12c7c16"><p class="cl-e12c60b4"><span class="cl-e1289812">Confirmed</span></p></td><td class="cl-e12c7c20"><p class="cl-e12c60b4"><span class="cl-e1289812">male</span></p></td><td class="cl-e12c7c2a"><p class="cl-e12c60a0"><span class="cl-e1289812">64</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e12c7c0d"><p class="cl-e12c60a0"><span class="cl-e1289812">6</span></p></td><td class="cl-e12c7c16"><p class="cl-e12c60b4"><span class="cl-e1289812">Confirmed</span></p></td><td class="cl-e12c7c20"><p class="cl-e12c60b4"><span class="cl-e1289812">male</span></p></td><td class="cl-e12c7c2a"><p class="cl-e12c60a0"><span class="cl-e1289812">8</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e12c7c0d"><p class="cl-e12c60a0"><span class="cl-e1289812">7</span></p></td><td class="cl-e12c7c16"><p class="cl-e12c60b4"><span class="cl-e1289812">Confirmed</span></p></td><td class="cl-e12c7c20"><p class="cl-e12c60b4"><span class="cl-e1289812">female</span></p></td><td class="cl-e12c7c2a"><p class="cl-e12c60a0"><span class="cl-e1289812">22</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e12c7c0d"><p class="cl-e12c60a0"><span class="cl-e1289812">8</span></p></td><td class="cl-e12c7c16"><p class="cl-e12c60b4"><span class="cl-e1289812">Confirmed</span></p></td><td class="cl-e12c7c20"><p class="cl-e12c60b4"><span class="cl-e1289812">female</span></p></td><td class="cl-e12c7c2a"><p class="cl-e12c60a0"><span class="cl-e1289812">31</span></p></td></tr></tbody></table></div> ] .pull-right[ The *columns* of the cross-table should come from the column **`case_def`** ```r tbl_cross( data = surv, row = sex, * col = case_def) ``` ] --- # `tbl_cross()` example .pull-left[ This dataset in R has the name **`surv`**. We want a cross-tabulation of columns `case_def` and `sex`. <div class="tabwid"><style>.cl-e15fc530{}.cl-e15593d0{font-family:'Arial';font-size:11pt;font-weight:bold;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e15593da{font-family:'Arial';font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:rgba(0, 0, 0, 1.00);background-color:transparent;}.cl-e15a0898{margin:0;text-align:right;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e15a08ac{margin:0;text-align:left;border-bottom: 0 solid rgba(0, 0, 0, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0 solid rgba(0, 0, 0, 1.00);border-right: 0 solid rgba(0, 0, 0, 1.00);padding-bottom:5pt;padding-top:5pt;padding-left:5pt;padding-right:5pt;line-height: 1;background-color:transparent;}.cl-e15a218e{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a2198{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a2199{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a21a2{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a21ac{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a21ad{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a21ae{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a21b6{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0 solid rgba(0, 0, 0, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a21b7{width:0.608in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a21b8{width:0.99in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a21c0{width:0.744in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}.cl-e15a21ca{width:0.54in;background-color:transparent;vertical-align: middle;border-bottom: 0.75pt solid rgba(102, 102, 102, 1.00);border-top: 0.75pt solid rgba(102, 102, 102, 1.00);border-left: 0.75pt solid rgba(102, 102, 102, 1.00);border-right: 0.75pt solid rgba(102, 102, 102, 1.00);margin-bottom:0;margin-top:0;margin-left:0;margin-right:0;}</style><table data-quarto-disable-processing='true' class='cl-e15fc530'><thead><tr style="overflow-wrap:break-word;"><th class="cl-e15a218e"><p class="cl-e15a0898"><span class="cl-e15593d0">case</span></p></th><th class="cl-e15a2198"><p class="cl-e15a08ac"><span class="cl-e15593d0">case_def</span></p></th><th class="cl-e15a2199"><p class="cl-e15a08ac"><span class="cl-e15593d0">sex</span></p></th><th class="cl-e15a21a2"><p class="cl-e15a0898"><span class="cl-e15593d0">age</span></p></th></tr></thead><tbody><tr style="overflow-wrap:break-word;"><td class="cl-e15a21ac"><p class="cl-e15a0898"><span class="cl-e15593da">1</span></p></td><td class="cl-e15a21ad"><p class="cl-e15a08ac"><span class="cl-e15593da">Confirmed</span></p></td><td class="cl-e15a21ae"><p class="cl-e15a08ac"><span class="cl-e15593da">female</span></p></td><td class="cl-e15a21b6"><p class="cl-e15a0898"><span class="cl-e15593da">1</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e15a21b7"><p class="cl-e15a0898"><span class="cl-e15593da">2</span></p></td><td class="cl-e15a21b8"><p class="cl-e15a08ac"><span class="cl-e15593da">Confirmed</span></p></td><td class="cl-e15a21c0"><p class="cl-e15a08ac"><span class="cl-e15593da">male</span></p></td><td class="cl-e15a21ca"><p class="cl-e15a0898"><span class="cl-e15593da">16</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e15a218e"><p class="cl-e15a0898"><span class="cl-e15593da">3</span></p></td><td class="cl-e15a2198"><p class="cl-e15a08ac"><span class="cl-e15593da">Suspect</span></p></td><td class="cl-e15a2199"><p class="cl-e15a08ac"><span class="cl-e15593da">female</span></p></td><td class="cl-e15a21a2"><p class="cl-e15a0898"><span class="cl-e15593da">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e15a218e"><p class="cl-e15a0898"><span class="cl-e15593da">4</span></p></td><td class="cl-e15a2198"><p class="cl-e15a08ac"><span class="cl-e15593da">Suspect</span></p></td><td class="cl-e15a2199"><p class="cl-e15a08ac"><span class="cl-e15593da">female</span></p></td><td class="cl-e15a21a2"><p class="cl-e15a0898"><span class="cl-e15593da">10</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e15a21b7"><p class="cl-e15a0898"><span class="cl-e15593da">5</span></p></td><td class="cl-e15a21b8"><p class="cl-e15a08ac"><span class="cl-e15593da">Confirmed</span></p></td><td class="cl-e15a21c0"><p class="cl-e15a08ac"><span class="cl-e15593da">male</span></p></td><td class="cl-e15a21ca"><p class="cl-e15a0898"><span class="cl-e15593da">64</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e15a21b7"><p class="cl-e15a0898"><span class="cl-e15593da">6</span></p></td><td class="cl-e15a21b8"><p class="cl-e15a08ac"><span class="cl-e15593da">Confirmed</span></p></td><td class="cl-e15a21c0"><p class="cl-e15a08ac"><span class="cl-e15593da">male</span></p></td><td class="cl-e15a21ca"><p class="cl-e15a0898"><span class="cl-e15593da">8</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e15a21b7"><p class="cl-e15a0898"><span class="cl-e15593da">7</span></p></td><td class="cl-e15a21b8"><p class="cl-e15a08ac"><span class="cl-e15593da">Confirmed</span></p></td><td class="cl-e15a21c0"><p class="cl-e15a08ac"><span class="cl-e15593da">female</span></p></td><td class="cl-e15a21ca"><p class="cl-e15a0898"><span class="cl-e15593da">22</span></p></td></tr><tr style="overflow-wrap:break-word;"><td class="cl-e15a21b7"><p class="cl-e15a0898"><span class="cl-e15593da">8</span></p></td><td class="cl-e15a21b8"><p class="cl-e15a08ac"><span class="cl-e15593da">Confirmed</span></p></td><td class="cl-e15a21c0"><p class="cl-e15a08ac"><span class="cl-e15593da">female</span></p></td><td class="cl-e15a21ca"><p class="cl-e15a0898"><span class="cl-e15593da">31</span></p></td></tr></tbody></table></div> ] .pull-right[ Now we run the command to create the cross-table ```r tbl_cross( data = surv, row = sex, col = case_def) ```
case_def
Total
Confirmed
Suspect
sex
female
3
2
5
male
3
0
3
Total
6
2
8
] --- # Packages .pull-left[ The functions `sqrt()`, `sum()`, `max()`, `min()` and `c()` are ready-to-use when you install R. These are called **{base} R** functions. ] -- .pull-right[ However, most functions must be downloaded with their **R package**. For example, `tbl_cross()` is contained in the R package named {gtsummary}. R packages are often referred to in {brackets} and have "hex" logos. <img src="../../images/functions_packages/gt_summary.png" width="50%" /> ] --- # Packages An R package is a **shareable bundle of related functions** to download and use. Packages typically have a theme, for example: * **{ggplot2}** is the most common data visualization package * **{lubridate}** makes it easier to work with dates * **{janitor}** helps clean and summarize data * **{rmarkdown}** helps you make automated reports <img src="../../images/functions_packages/ggplot2.png" width="20%" /><img src="../../images/functions_packages/lubridate.png" width="20%" /><img src="../../images/functions_packages/janitor.png" width="20%" /><img src="../../images/functions_packages/rmarkdown.png" width="20%" /> --- # Install vs. Load .pull-left[ **Step 1 - Install** A package is **installed once** and stored in your R “library”. *The package is like a "book" of functions.* <img src="../../images/functions_packages/library.png" width="80%" /> ] -- .pull-right[ **Step 2 - Load** Begin **every R session** by loading the packages you want to use. *Like borrowing a book from your library*. <img src="../../images/functions_packages/bookshelf1.png" width="80%" /> ] --- # The {pacman} package Using R is often a choice between approaches. We are here to coach you. .pull-left[ **The traditional "base R" approach** ```r install.packages("janitor") library(janitor) # loads ``` * Re-installs every time run * Multiple commands * Difficult syntax * Rarely necessary ] .pull-right[ **The efficient "pacman" approach** ```r pacman::p_load(janitor) ``` * Installs packages *only if necessary*, **and** loads them * Good for shared scripts * {pacman} = **pac**kage **man**ager * Requires the {pacman} package ] --- # Which code is more simple? These commands install and load the same 5 packages. .pull-left[ Using {base} R functions ```r # install the packages install.packages( c("rio", "janitor", "gtsummary", "here", "tidyverse")) # load the packages for use library(rio) library(janitor) library(gtsummary) library(here) library(tidyverse) ``` ] .pull-right[ Using {pacman} ```r # install if necessary, and load pacman::p_load( rio, janitor, gtsummary, here, tidyverse) ``` ] ??? This is common R, where there are many ways do a task. Our job is boil it all down and share with you the easiest and most simple approaches. --- class: inverse, center, middle # Importing data into R --- # Smoothly importing data Recent advancements have made importing data into R much easier: * **RStudio projects** * The **`import()`** function from the **{rio}** package * The **{here}** package In this module you will use **`import()`** to import data from your **RStudio project**. In the next module we will discuss **{here}**. --- # Using `import()` The **`import()`** function uses the file extension (.csv, .xlsx) to understand the data type. This avoids past confusion e.g. `read_csv()`, `read.csv()`, `read_excel()`... .pull-left[ ```r import("testing_data.csv") ``` For a file in the project "root" folder, no other information is needed... and it works on any computer! <img src="../../images/functions_packages/import_root.png" width="100%" /> .footnote[Other importing scenarios are addressed in the next module] ] .pull-right[ <img src="../../images/functions_packages/rio.png" width="40%" /> `import()` is from the {rio} package, shorthand for "**R** **I**nputs/**O**utputs" ] --- class: inverse, center, middle ## Exercise! In the course website, open the exercise for Module 1 and login Follow instructions to create an RStudio project and begin coding Notify us if you cannot login or are unsure what to do <img src="../../images/breakout/teamwork2.png" width="50%" />