Efficient R Programming
A Practical Guide to Smarter Programming
Samenvatting
There are many excellent R resources for visualization, data science, and package development. Hundreds of scattered vignettes, web pages, and forums explain how to use R in particular domains. But little has been written on how to simply make R work effectively—until now. This hands-on book teaches novices and experienced R users how to write efficient R code.
Drawing on years of experience teaching R courses, authors Colin Gillespie and Robin Lovelace provide practical advice on a range of topics-from optimizing the set-up of RStudio to leveraging C++-that make this book a useful addition to any R user’s bookshelf. Academics, business users, and programmers from a wide range of backgrounds stand to benefit from the guidance in Efficient R Programming.
- Get advice for setting up an R programming environment
- Explore general programming concepts and R coding techniques
- Understand the ingredients of an efficient R workflow
- Learn how to efficiently read and write data in R
- Dive into data carpentry—the vital skill for cleaning raw data
- Optimize your code with profiling, standard tricks, and other methods
- Determine your hardware capabilities for handling R computation
- Maximize the benefits of collaborative R programming
- Accelerate your transition from R hacker to R programmer
Specificaties
Inhoudsopgave
1. Introduction
-Prerequisites
-Who This Book Is for and How to Use It
-What Is Efficiency?
-What Is Efficient R Programming?
-Why Efficiency?
-Cross-Transferable Skills for Efficiency
-Benchmarking and Profiling
-Book Resources
-References
2. Efficient Setup
-Prerequisites
-Top Five Tips for an Efficient R Setup
-Operating System
-R Version
-R Startup
-RStudio
-BLAS and Alternative R Interpreters
-References
3. Efficient Programming
-Prerequisites
-Top Five Tips for Efficient Programming
-General Advice
-Communicating with the User
-Factors
-The Apply Family
-Caching Variables
-The Byte Compiler
-References
4. Efficient Workflow
-Prerequisites
-Top Five Tips for Efficient Workflow
-A Project Planning Typology
-Project Planning and Management
-Package Selection
-Publication
-Reference
5. Efficient Input/Output
-Prerequisites
-Top Five Tips for Efficient Data I/O
-Versatile Data Import with rio
-Plain-Text Formats
-Binary File Formats
-Getting Data from the Internet
-Accessing Data Stored in Packages
-References
6. Efficient Data Carpentry
-Prerequisites
-Top Five Tips for Efficient Data Carpentry
-Efficient Data Frames with tibble
-Tidying Data with tidyr and Regular Expressions
-Efficient Data Processing with dplyr
-Combining Datasets
-Working with Databases
-Data Processing with data.table
-References
7. Efficient Optimization
-Prerequisites
-Top Five Tips for Efficient Optimization
-Code Profiling
-Efficient Base R
-Example: Optimizing the move_square() Function
-Parallel Computing
-Rcpp
-References
8. Efficient Hardware
-Prerequisites
-Top Five Tips for Efficient Hardware
-Background: What Is a Byte?
-Random Access Memory
-Hard Drives: HDD Versus SSD
-Operating Systems: 32-Bit or 64-Bit
-Central Processing Unit
-Cloud Computing
9. Efficient Collaboration
-Prerequisites
-Top Five Tips for Efficient Collaboration
-Coding Style
-Version Control
-Code Review
-References
10. Efficient Learning
-Prerequisties
-Top Five Tips for Efficient Learning
-Using R’s Internal Help
-Online Resources
-Asking a Question
-Learning In Depth
-Spread the Knowledge
-References
Appendix A: Package Dependencies
Appendix B: References
Index
Anderen die dit boek kochten, kochten ook
Net verschenen
Rubrieken
- aanbestedingsrecht
- aansprakelijkheids- en verzekeringsrecht
- accountancy
- algemeen juridisch
- arbeidsrecht
- bank- en effectenrecht
- bestuursrecht
- bouwrecht
- burgerlijk recht en procesrecht
- europees-internationaal recht
- fiscaal recht
- gezondheidsrecht
- insolventierecht
- intellectuele eigendom en ict-recht
- management
- mens en maatschappij
- milieu- en omgevingsrecht
- notarieel recht
- ondernemingsrecht
- pensioenrecht
- personen- en familierecht
- sociale zekerheidsrecht
- staatsrecht
- strafrecht en criminologie
- vastgoed- en huurrecht
- vreemdelingenrecht