高级R编程培训
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.
FunctionsThis 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.
Functions: Lesson ChoicesFunctional ProgrammingFunctional 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.
Functional Programming: Lesson ChoicesDebugging 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.
Object-Oriented ProgrammingObject 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.