Data, graphics, and programming in R

advertisement
Data, graphics, and programming in R
28.1, 30.1, 2-4.2
Daily:10:00-12:45 & 13:45-16:30
EXCEPT WED 4th 9:00-11:45 & 12:45-15:30
Teacher: Anna Kuparinen
Course program
•
Wed
– Basics of R (AM & PM)
•
Fri
– Datasets in R (AM), graphics (PM)
•
Mon
– Statistical tests and linear models (AM), more graphics (PM)
•
Tue
– Basics of programming (AM), generalized linear models (PM)
•
Wed
– Mixed models (AM), working with own data (PM)
Teaching based on short lectures, demos, and exercises
Course material
• Lectures, demo codes, exercises, and other material can
be found by following the course link in
www.mv.helsinki.fi/home/akuparin/R_course.htm
• Other R material (e.g. downloading R)
http://www.r-project.org/
How to get most out of the course?
• Do notes –also comment your own solution codes for the
exercises
• Be active –ask questions, ask clarification, ask to slow
down
• In the evenings, re-read the materials of the day
• Start to use R immediately after the course
What is
?
• R is a software that provides a very handy environment and a large
collection of tools for
– Exploring and editing data
– Computations, calculations, numerical mathematics
– Statistical analyses
– Producing graphics
– Programming
• R is a freeware program
• R is developed by its users, i.e. anyone can write their own R
extensions and share them with other users through R web
– New methods are quickly implemented to R
– There is a large variety of tools available
Getting started
R work space
Notepad
Write code first here!
or R script
Then copy-paste to R.
How to use R?
• R is a text-based interface, i.e. commands are given by text lines
– > one should remember at least most common text commands
• In practice, commands are typically written in an editor program and
them copy-pasted to R
– Notepad, R script, Tinn-R…
– Commenting the code is highly recommended!
• R is based on objects and functions
– Objects can be variables, lists, data frames…
– Functions are made to carry out specific operations
– Functions are stored in “library packages”
• R stores objects and commands on workspace
– Workspace and command history can be saved and loaded later on
– Large objects reserve a lot of memory in the workspace
First commands
• Write your command on a command line
> 2+3
• Then press enter
[1] 5
• R returns the value
Placing a value to a variable
• Write your command on a command line
> a=2+3
• Then press enter
>
• R does not return the value, but it has saved it to variable a
Operators in R
= places a value (<- would also work)
== checks identity of values on the left and on the right side
An command
A=4/9 sets a value 4/9 to a variable called A.
An command A==4/9 checks if A equals to 4/9 or not.
The command returns a logical value TRUE or FALSE
>= larger or of equal size
<= smaller or of equal size
DEMO 1
Vector
Length of this vector is 4.
1st element
 2.3
 6.8
 
1.1 
 
 4.9
4th element
Vectors in R
• Generic way of creating a vector
> a=c(2.3,6.8,1.1,4.9)
• Pointing to a vector element
> a[1]
[1] 2.3
• Or several elements
> a[c(1,3)]
[1] 2.3 1.1
• Any calculations such as + or exp()can be applied to vectors.
Matrix
1st column
A matrix element is pointed by
its row and column number:
A[2,4]=-2.2
1st row
 2.3 8 9 7.66 
 5 3.3 14 2.2 

A
7
0 5.4 7.2 


 1 1 3.8 8.2 
Size of this matrix is 4 X 4
Matrix in R
• Generic way of creating a matrix
> a=matrix(c(2,5,6,1),nrow=2,ncol=2,byrow=T)
> a
[,1] [,2]
[1,]
2
5
[2,]
6
1
> a[1,]
[1] 2
5
> a[,2]
[1] 5
1
Tools to create vectors and matrixes
• Tools to create vectors
A
A
A
A
A
A
A
=
=
=
=
=
=
=
c(1.0,5.8,9.0)
1:6
rep(1,9)
rep(c(1,2),4)
rep(c(1,2),each=4)
seq(1,10,by=0.2)
seq(1,10,length.out=57)
• Creating matrixes
B = matrix(1,nrow=8,ncol=9)
B = matrix(0,nrow=9,ncol=4)
-> DEMO 2
R as a calculator
• Basic math operators in R: +, -, /, *, ^
• Matrix calculations:
– transpose matrixes by t()
– Matrix calculations specified with %: for example * multiplies by
elements, and %*% is for multiplication of matrixes
• Basic mathematical functions:
– log, exp, sqrt, cos, sin, tan, abs etc
• Rounding: round, floor, ceiling
Anatomy of an R function
Object=function(parameters)
PARAMETER VALUES
AND SETTINGS:
OBJECT RETURNED
BY THE FUNCTION
not all have to be defined
NAME OF THE
FUNCTION
(see help files for the
defaults)
Help in R
• Many ways to find help:
– In R directly: ?”name of the function” or
help.search(“keyword”)
e.g. ?rep or help.search(“vector”)
– From R web pages
– For more advanced problems also from R discussion groups
– > DEMO 3
Download