Programming with R for Official Statistics: Introduction to Programming (2024)

Last updated on 2024-07-09 | Edit this page

Overview

Questions

  • What is programming?
  • What is object oriented programming?
  • How to document code?
  • What is a directory?

What is programming?

Programmers use programming languages to give instructions to theircomputers. In this course, we will learn how to use the open sourcelanguage R to complete common tasks required in the field of officialstatistics. This includes the basics of R, data manipulation, and bestpractices.

There are a few reasons why programming with R is useful for officialstatistics. Data manipulation and analysis with R is:

  • Time-saving: R can complete many computations on a large amountof data that would take a person a long time manually

  • Reproducible: This code can be re-run with other data with smallmodifications and shared with others to be applied to other newpurposes

  • Transparent: When you’ve completed a script using best practices,you should be left with a clear list of instructions to complete thedata analysis in the form of code. This avoids “black boxes” where ananalyst is unsure what they’ve done to the data to get it to it’s finalform

R is an object oriented programming language

Object oriented programming languages use objects as theirmain tools. These objects have classes, which describe theirgeneral properties. For example, in R you might work withnumeric objects, which would contain numbers. You could alsowork with characters, which would be composed of text. We’llexplore classes and data types thoroughly in Episode 3 (Data Types andStructures). We can assign “labels” to these objects, creating avariable and use them interchangeably. We assign objects withan assignment operator. In R, the most commonly used assignment operatoris <-. Try reproducing the example below on your machineby entering the code into the console and hitting the “run” button.

R

# Assign a number to a variablenumber_flowers <- 8# Print the variable's contentsprint(number_flowers)

We can get the value stored within the variable by printing it.

[1] 8

Assigning a new value to a variable breaks the connection with theold value; R forgets that number and applies the variable name to thenew value.

When you assign a value to a variable, R only stores the value, notthe calculation you used to create it. This is an important point ifyou’re used to the way a spreadsheet program automatically updateslinked cells. Let’s look at an example.

# Reassign the variablenumber_flowers <- 7

{: .language-r)

OUTPUT

[1] 7

Variable Naming Conventions

Historically, R programmers have used a variety of conventions fornaming variables. The . > character in R can be a validpart of a variable name; thus the above assignment could have easilybeen weight.kg <- 57.5. This is often confusing to Rnewcomers who have programmed in languages where . has amore significant meaning. Today, most R programmers 1) start variablenames with lower case letters, 2) separate words > in variable nameswith underscores, and 3) use only lowercase letters, underscores, andnumbers in variable names. The Tidyverse Style Guide includes asection on thisand other style considerations.

Documenting Code

Notice that in the above examples, hashtags (#) are usedbefore giving instructions that are intended for you rather than R.Hashtags produce comments, which are handy for leavinginformation about the code that will follow. Commenting as much code aspossible is part of best practices. Always comment your code! You owe itto your colleagues who may see your code (not to mention your futurecoding self).

# Hashtags go before commented code, which is not run# print("This code will not be run")print("Always comment your code!")

OUTPUT

[1] "Always comment your code!"

Directories

A directory is a location on your machine. Say you’d like to open afile that’s located in a folder on your computer. We need to tell Rwhere to look for the file if we expect to find it. Directories areusually listed by referencing nested folders separated by slashes. Thereare small differences due to operating system (OS), so refer todocumentation specific to your OS when learning to work with folderstructures.

For example: /Users/Documents/Learning-R points to afolder called “Learning-R” in a user’s documents folder. Depending onyour IDE (Integrated Development Environment) and setup, you can printyour current directory, known as the working directory. Rautomatically reads and writes files from and to your current workingdirectory.

R

# print current working directory getwd()

OUTPUT

[1] "/Users/Documents/

Before beginning our lessons, please set your working directory tothe folder that we created in the setup section withsetwd(). For example, if your folder is namedLearning-R:

R

# change current working directory setwd("~/Documents/Learning-R")

Key Points

  • Programming makes our work faster, more reproducible, and moretransparent.
  • R is an object oriented programming language
  • Document your code with comments
  • A working directory is the active location on your computer where Rcan read and write files
Programming with R for Official Statistics: Introduction to Programming (2024)

References

Top Articles
Pennsylvania Lottery - Treasure Hunt
Mega Millions: Ticket Sold In Florida Wins Record $1.58 Billion Jackpot—Here’s How Much The Winner Will Take Home After Taxes
How To Start a Consignment Shop in 12 Steps (2024) - Shopify
7 C's of Communication | The Effective Communication Checklist
Chatiw.ib
Obituary (Binghamton Press & Sun-Bulletin): Tully Area Historical Society
Nordstrom Rack Glendale Photos
Okatee River Farms
Zendaya Boob Job
Nexus Crossword Puzzle Solver
Purple Crip Strain Leafly
Lonadine
Worcester On Craigslist
سریال رویای شیرین جوانی قسمت 338
Wilmot Science Training Program for Deaf High School Students Expands Across the U.S.
Mani Pedi Walk Ins Near Me
2 Corinthians 6 Nlt
Divina Rapsing
Our History
Sandals Travel Agent Login
Macu Heloc Rate
Getmnapp
Southwest Flight 238
Astro Seek Asteroid Chart
Rainfall Map Oklahoma
Evil Dead Rise Showtimes Near Regal Sawgrass & Imax
Mark Ronchetti Daughters
Pch Sunken Treasures
How to Draw a Bubble Letter M in 5 Easy Steps
Forager How-to Get Archaeology Items - Dino Egg, Anchor, Fossil, Frozen Relic, Frozen Squid, Kapala, Lava Eel, and More!
M3Gan Showtimes Near Cinemark North Hills And Xd
Helloid Worthington Login
Puffco Peak 3 Red Flashes
Laff Tv Passport
Collier Urgent Care Park Shore
Elizaveta Viktorovna Bout
Heelyqutii
Dying Light Nexus
Sunrise Garden Beach Resort - Select Hurghada günstig buchen | billareisen.at
Tillman Funeral Home Tallahassee
Casamba Mobile Login
Arnesons Webcam
Suntory Yamazaki 18 Jahre | Whisky.de » Zum Online-Shop
Sherwin Source Intranet
Workday Latech Edu
17 of the best things to do in Bozeman, Montana
Bbwcumdreams
Razor Edge Gotti Pitbull Price
What Is The Gcf Of 44J5K4 And 121J2K6
One Facing Life Maybe Crossword
The Love Life Of Kelsey Asbille: A Comprehensive Guide To Her Relationships
Latest Posts
Article information

Author: Msgr. Benton Quitzon

Last Updated:

Views: 6380

Rating: 4.2 / 5 (63 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Msgr. Benton Quitzon

Birthday: 2001-08-13

Address: 96487 Kris Cliff, Teresiafurt, WI 95201

Phone: +9418513585781

Job: Senior Designer

Hobby: Calligraphy, Rowing, Vacation, Geocaching, Web surfing, Electronics, Electronics

Introduction: My name is Msgr. Benton Quitzon, I am a comfortable, charming, thankful, happy, adventurous, handsome, precious person who loves writing and wants to share my knowledge and understanding with you.