Advanced R Programming

Product type

Advanced R Programming

Coursera (CC)
Logo Coursera (CC)
Provider rating: starstarstarstar_halfstar_border 7.2 Coursera (CC) has an average rating of 7.2 (out of 6 reviews)

Need more information? Get more details on the site of the provider.

Description

When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan

  • Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
  • Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.

About this course: This course covers advanced topics in R programming that are necessary for developing powerful, robust, and reusable data science tools. Topics covered include functional programming in R, robust error handling, object oriented programming, profiling and benchmarking, debugging, and proper design of functions. Upon completing this course you will be able to identify and abstract common data analysis tasks and to encapsulate them in user-facing functions. Because every data science environment encounters unique data challenges, there is always a need to develop custom software specific to your organization’s mission. You will also be able to define new data types in R …

Read the complete description

Frequently asked questions

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.

Didn't find what you were looking for? See also: R Programming, Programming (general), Database Management, Data Storage, and Python.

When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan

  • Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
  • Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.

About this course: This course covers advanced topics in R programming that are necessary for developing powerful, robust, and reusable data science tools. Topics covered include functional programming in R, robust error handling, object oriented programming, profiling and benchmarking, debugging, and proper design of functions. Upon completing this course you will be able to identify and abstract common data analysis tasks and to encapsulate them in user-facing functions. Because every data science environment encounters unique data challenges, there is always a need to develop custom software specific to your organization’s mission. You will also be able to define new data types in R and to develop a universe of functionality specific to those data types to enable cleaner execution of data science tasks and stronger reusability within a team.

Created by:  Johns Hopkins University
  • Taught by:  Roger D. Peng, PhD, Associate Professor, Biostatistics

    Bloomberg School of Public Health
  • Taught by:  Brooke Anderson, Assistant Professor, Environmental & Radiological Health Sciences

    Colorado State University
Basic Info Course 2 of 5 in the Mastering Software Development in R Specialization Level Intermediate Language English, Subtitles: Chinese (Simplified) How To Pass Pass all graded assignments to complete the course. User Ratings 4.4 stars Average User Rating 4.4See what learners said 課程作業

每門課程都像是一本互動的教科書,具有預先錄製的視頻、測驗和項目。

來自同學的幫助

與其他成千上萬的學生相聯繫,對想法進行辯論,討論課程材料,並尋求幫助來掌握概念。

證書

獲得正式認證的作業,並與朋友、同事和雇主分享您的成功。

Johns Hopkins University The mission of The Johns Hopkins University is to educate its students and cultivate their capacity for life-long learning, to foster independent and original research, and to bring the benefits of discovery to the world.

Syllabus


WEEK 1


Welcome to Advanced R Programming



This course covers advanced topics in R programming that are necessary for developing powerful, robust, and reusable data science tools. Topics covered include functional programming in R, robust error handling, object oriented programming, profiling and benchmarking, debugging, and proper design of functions. Upon completing this course you will be able to identify and abstract common data analysis tasks and to encapsulate them in user-facing functions. Because every data science environment encounters unique data challenges, there is always a need to develop custom software specific to your organization’s mission. You will also be able to define new data types in R and to develop a universe of functionality specific to those data types to enable cleaner execution of data science tasks and stronger reusability within a team.


1 video, 3 readings expand


  1. Video: Welcome to Advanced R Programming
  2. 閱讀: Syllabus
  3. 閱讀: Course Textbook: Mastering Software Development in R
  4. 閱讀: swirl Assignments


Functions
This module begins with control structures in R for controlling the logical flow of an R program. We then move on to functions, their role in R programming, and some guidelines for writing good functions.


17 readings expand


  1. 閱讀: Control Structures Overview
  2. 閱讀: if-else
  3. 閱讀: for Loops
  4. 閱讀: Nested for loops
  5. 閱讀: next, break
  6. 閱讀: Summary
  7. 閱讀: Functions Overview
  8. 閱讀: Code
  9. 閱讀: Function interface
  10. 閱讀: Default values
  11. 閱讀: Re-factoring code
  12. 閱讀: Dependency Checking
  13. 閱讀: Vectorization
  14. 閱讀: Argument Checking
  15. 閱讀: R package
  16. 閱讀: When Should I Write a Function?
  17. 閱讀: Summary

Graded: Swirl Lesson

WEEK 2


Functional Programming



Functional programming is a key aspect of R and is one of R's differentiating factors as a data analysis language. Understanding the concepts of functional programming will help you to become a better data science software developer. In addition, we cover error and exception handling in R for writing robust code.


19 readings expand


  1. 閱讀: What is Functional Programming?
  2. 閱讀: Core Functional Programming Functions
  3. 閱讀: Map
  4. 閱讀: Reduce
  5. 閱讀: Search
  6. 閱讀: Filter
  7. 閱讀: Compose
  8. 閱讀: Partial Application
  9. 閱讀: Side Effects
  10. 閱讀: Recursion
  11. 閱讀: Summary
  12. 閱讀: Expressions
  13. 閱讀: Environments
  14. 閱讀: Execution Environments
  15. 閱讀: What is an error?
  16. 閱讀: Generating Errors
  17. 閱讀: When to generate errors or warnings
  18. 閱讀: How should errors be handled?
  19. 閱讀: Summary

Graded: Swirl Lesson

WEEK 3


Debugging and Profiling



Debugging tools are useful for analyzing your code when it exhibits unexpected behavior. We go through the various debugging tools in R and how they can be used to identify problems in code. Profiling tools allow you to see where your code spends its time and to optimize your code for maximum efficiency.


15 readings expand


  1. 閱讀: Debugging Overview
  2. 閱讀: traceback()
  3. 閱讀: Browsing a Function Environment
  4. 閱讀: Tracing Functions
  5. 閱讀: Using debug() and debugonce()
  6. 閱讀: recover()
  7. 閱讀: Final Thoughts on Debugging
  8. 閱讀: Summary
  9. 閱讀: Profiling Overview
  10. 閱讀: microbenchmark
  11. 閱讀: profvis
  12. 閱讀: Find out more
  13. 閱讀: Summary
  14. 閱讀: Non-standard evaluation
  15. 閱讀: Summary

Graded: Debugging and Profiling

WEEK 4


Object-Oriented Programming



Object oriented programming allows you to define custom data types or classes and a set of functions for handling that data type in a way that you define. R has a three different methods for implementing object oriented programming and we will cover them in this section.


11 readings expand


  1. 閱讀: OOP Overview
  2. 閱讀: Object Oriented Principles
  3. 閱讀: S3
  4. 閱讀: S4
  5. 閱讀: Reference Classes
  6. 閱讀: Summary
  7. 閱讀: Overview
  8. 閱讀: Reuse existing data structures
  9. 閱讀: Compose simple functions with the pipe
  10. 閱讀: Embrace functional programming
  11. 閱讀: Design for humans

Graded: Functional and Object-Oriented Programming
There are no reviews yet.

Share your review

Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate £1.- to Stichting Edukans.

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.