knitr::opts_chunk$set(
  collapse = TRUE, comment = "#>", fig.path = "man/figures/README-",
  message = FALSE, warning = FALSE, error = FALSE, tidy = TRUE
)

Introduction to R Programming

This syllabus may change. See Blackboard for up-to-date information.

Course Description

Introduction to R programming for statistics, data analysis and visualization, and publishing. A full stack overview from using R for basic statistics and graphing to publishing analytics web applications and R packages.

snaputils::contactinfo("leonawicz-teach")


Textbooks

None of the textbooks used in the class require purchasing. We will use open source texts that are available free online and widely used by the R community. However, physical copies can be purchased online if you want a physical book.

Required text

Recommended texts

There are many other good textbooks available for R programming and development. I encourage exploring more of them. Advanced R will be more helpful to students who are already R users, even if they do not feel like "programmers" or "developers". Even for beginners, if you enjoy R coding and feel like some aspects of it are not sufficiently covered by R For Data Science, I encourage exploring Advanced R. Don't shy away from it on title alone. Some sections are still accessible and helpful to relative newcomers.

Course requirements

Prerequisites

STAT 200 completion with a grade of C or better, or permission of instructor.

Withdrawals

The last day to withdraw from the class is ..date..

Instructors have the right to withdraw students who do not meet course prerequisites, did not obtain a grade of C (2.0) or better in all prerequisite courses or who have not participated substantially in a course. The last day for faculty-initiated withdrawals is ..date..

Other deadlines

Grading policy

Grading

Letter grades

Adjustments

Adjustments to these cutoffs may be based grade distribution. This can raise but not lower grades.

Required assignments

The two small projects that occur during the semester and the final project are absolute requirements. All three must be completed and earn a C grade or better in order to pass the course. For example, you cannot pass the course if you skip a small project, do perfect on everything else, and your grade is a 90%. The core of the course, your opportunity as the student to demonstrate successful learning and skill development, and my ability as the instructor to fully assess that progress, is built around these three projects.

Departmental policies

The Department of Mathematical Sciences has specific policies on early finals and incomplete grades. As you are enrolled in a course administered by this department, you are encouraged to become familiar with these policies. See the math department policies on early finals and incomplete grades at http://www.uaf.edu/dms/policies. If you are unable to complete the work for the course in a timely fashion or attend class on a regular basis you or a representative should contact me prior to the end of the semester.

Course goals

The main goal of this course is to introduce you to the R programming language for statistical computing from the basics of using the language for simple statistical and graphing tasks to publishing and sharing your work online.

This course does not teach you probability and statistics. It provides a foundation for using programming to carry out tasks from statistics and data analysis in R in a manner that is reproducible, organized, promotes good project management and documentation skills, fosters open source code sharing and collaboration, and is standard in the R developer community.

Some context

This course aims to help make you a more self-reliant member of the scientific community while also putting you in a better position to code as part of a team. The days of the solitary scientist are over (to the extent these days ever truly existed). It is important to be able to analyze real data and to write code to carry out analyses. Much data analysis today cannot be done exclusively in a GUI by point and click. Most researchers are not afforded their own teams of graduate students and other support staff to carry out statistical programming and analysis so it is valuable to also have these skills. And only when you have some degree of self-reliance can you also work as part of a team on collaborative coding projects.

This is why you are exposed to publishing work during the entire second half of the course. It doesn't matter what you know in your research area if you can't write the code necessary to do your work, and even if you can, it still doesn't matter if you can't effectively share it for purposes of collaboration or publication. On both counts, it helps immensely to be able to code.

A bit about R

R is powerful language with expanding capabilities and whose user base continues to grow rapidly year after year. It is free, open source and with a large and supportive community made up of scientists, researchers, professors, statisticians, data analysts and many others. It is the quintessential language for statistics and data analysis and it is especially widespread in academia. R now offers over 13,000 packages related to data analysis; something that any other language including Python is unlikely to ever reproduce. Packages in R are often bleeding-edge, based directly on and accompanying newly published research in statistics and methodologies from related fields. This is uncommon for other programming languages and much statistical work does not get duplicated in other languages.

Ultimately, just as with spoken languages, it is valuable to know multiple. Each has strengths and weaknesses based on what purposes they are fundamentally designed to serve best. This course will not give you every tool you may ever need as a researcher or analyst and it is not intended to, but it is an excellent place to start or to branch into from elsewhere.

Learning objectives

Homework

Homework is due every Monday by 12 p.m. on Blackboard. Homework that is turned in late loses 10% of points if turned in later in the day on the due date, 20% if turned in the next day, and is not excepted after that date (zero credit). Exceptions can be made for reasons beyond your control or at my discretion if you let me know in advance. You are encouraged to discuss homework with other students.

Quizzes

There are weekly quizzes for every section of the course. Quizzes are intended to track how well you are internalizing the work you are doing in your homework assignments. They are not meant to be difficult. If they seem difficult, it is a good indication that you should revisit and review your recent homework assignments.

The two lowest quiz scores will be dropped.

Exams/projects

Exams for this online course come in the form of projects. There are two small projects during the semester and one final project. Projects must be turned in by each project deadline. Like the course overall, each individual project must be completed and must earn at least a C grade or better. You cannot pass the course if you do not turn in all projects and earning a C grade or better on each project.

If a project is turned in on time but does not earn a C grade or better, you will have an opportunity to make revisions to your project and resubmit up to one week from the deadline. The deadline for the final project cannot be extended, however. It is advisable to start projects early and turn them in prior to the actual deadlines so that you can get feedback for any required revisions if it turns out to be necessary.

Projects need to be able to run. For example, a web application needs to load when I visit the url, an R package needs to be installable on another computer, etc. These very sensible minimum performance criteria are enough to insure the minimum grade.

Blackboard

Always check Blackboard for course documents and announcements regularly and to verify that your scores have been entered correctly.

Complaints and concerns

You are encouraged to talk to me about anything related to the course. If you have questions or concerns that cannot be resolved by me, contact the department chair.

Plagiarism and cheating

Although you may collaborate with others and work together on homework, any materials that you submit for grading, and everything that you do on quizzes and projects, should be entirely your own work. You are expected to conduct yourselves in accordance with the Student Code of Conduct, which prohibits cheating, plagiarism, and other forms of academic dishonesty. For more information see the UAF catalog.

Disabilities Services

The Office of Disability Services implements the Americans with Disabilities Act (ADA), and insures that UAF students have equal access to the campus and course materials. I will work with the Office of Disabilities Services (Whitaker Building, Room 208, 474-5655) to provide reasonable accommodations to students with disabilities. More information can be found at http://www.uaf.edu/disability.

General advice for succeeding in this course



leonawicz/uafrstat documentation built on May 30, 2019, 6:58 p.m.