Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 49

Ni dung

Gii thiu R
Cc thao tc c bn khi dng.
Bin
Cc kiu d liu: vector, matrix, list, array,
data.frame v table
Cch to data.frame

V sao dng R?
R l min ph
R l m ngun m
R l mt ngn ng
R l hp phn nhiu packages xy dng bi
cc chuyn gia.*

Vi dng lch s
1990: Ross Ihaka v Robert C.
Gentlman.
1994: phin bn u tin.
1997: d n CRAN. R theo giy php
GNU.
Nhm Core Team gn 20 ngi.
2000, phin bn 1.0
11/2013: 3.0.2.

R Foundation for Statistical


Computing, gi tt l R Foundation,

Vi dng lch s

'Chng ti tin rng R tr nn mt cng

c trng thnh v c gi tr, chng ti


mun bo m n c pht trin lin tc,
s pht trin ca nhng sng to trong
tng lai trong lnh vc phn mm dnh
cho nghin cu tnh ton v thng k.'
(Nhm pht trin R).*

Trch dn R v cc packages
citation()
citation ('mosaic')
contributors()
*

Ti v ci t R
Goolge: R download
Google: MAC R download
Download R 3.0.2 for Windows
Phin bn mi: c lp phin bn c.
Lu package: khng t ng mang sang!
G b R: xa th mc.
*

Giao din
R console
R: Command line

G v thc hin lnh


G enter
Chm phy: hai lnh ring bit

G v thc hin lnh


Khi enter c du +: phi g tip, hng di
l mt phn ca (cc) hng trn.
x=c(2,3
+ ,5,6,7)
plot(x,
+ col="red,
+ xlim=c(1,10))

Hon thnh tn: tab


G: t.t
G Tab
t.test
Nn thng xuyn s dng!

Hy lnh: Esc
Khng ch c.
Na chng mun b lnh ang g.

Duyt li lnh:
Duyt li lp li lnh
Duyt li v sa
Thng xuyn dng!

Ghi ch #

Ghi ty , khng phi lnh.

Chn, chp, dn dng lnh


Ko chut (drag)
Chp: Ctrl+C
Dn: Ctrl +V
Ch dn lnh: Edit/Paste command only.
*

Xem cc thao tc

Help/ Console

Cc IDE
Integrated Development Environment
H tr GUI.
Cng min ph!
R studio.
Tinn R.
R commander.
Nhng: phi nm vng R nguyn cht
*

Li: Error-Khuyn co: Warning

Li:
G tn sai (khng c, sai chnh t)
Cung cp i s cho hm khng ng, khng
.

Khuyn co:
Thng khng quan trng, c th b qua.
*

Phin lm vic: session

Mt phin lm vic:
Bt u: chy R.
Kt thc: thot R (ng ca s).

Khi Bt u: ti cc lnh, cc bin lu


ln trc:[Previously saved workspace
restored]
Khi Kt thc: hi c lu cc dng lnh, cc
bin (mi hoc b thay i)
*

Gip : ? v ??
? : tn chnh xc
?rnorm
??: tn gn ng do khng nh.
?.test
Tt c cc tn bt u bng .test
??chisq
*

Ti liu-tp ch

R help

http://cran.r-project.org/other-docs.html

An Introduction to R
The R language Definition.
Ti liu ting Vit ca GS. Nguyn Vn
Tun.
Tp ch : R Journal ti a ch

http://journal.r-project.org/

Sch: UseR! (Springer)...

Blog, Forum

R-Bloggers, http://www.r-bloggers.com/

Stack Overflow http://stackoverflow.com/

Trang web ting Vit dng R nhiu


statistics.vn.

Package- gii thiu v cch tm


Cc chng trnh con vi mc ch chuyn
bit v ci tin R base.
2013: c n 5000 packages.
Tm theo ch , CRAN Task View.
Tm theo t kha (google!):

"Text mining R package"


"Acturial R package"
"Item analysis R package"
...

Package- ci t v s dng
Ci t
install.packages("MASS")
chn mirror
S dng
library(MASS)
require(MASS)
Xem cc packages c ci
library()
Xem cc packages ang dng
search()
Gip
library(help='zoo')

Bin: variable
Bin l mt k hiu cha (cc) gi tr
Tn bin trong R

Phn bit hoa thng: dat, Dat, DAT l khc


nhau.
Khng c du cch, k t c bit, du cu tr
du chm.
S khng ng u tin.

Tn bin khng hp l, li: Unexpected


symbol in

Bin: Php gn
x = 100
y = 200
x <- 100
100 -> y
x =y
y= x
x= 12*3
x
(x=12*3)

#Gn 100 cho x


#Gn 200 cho y

# Hin th lun gi tr x

Bin: Xem obejcts()- Xa rm()


objects()
ls()
rm(x,y) # gii phng b nh
Xa tt c, khng nhm ln:
rm(list=objects())

Bin: Lu vo file: save()


Lu vo file: Memory Disk
gi li, gi cho ngi khc...
Cc bin c lu li trn a trong file
.Rdata khi ng R.
Ch ng lu mt bin vo mt file .Rdata:
x=c(1,4,5)
save(x,file=MyVar)

Bin: dng li: load()


a t file vo: Disk Memory
load(MyVar)
Cc thao tc i vi bin cng p dng cho
cc hm.
Phn bit bin, hm... l theo thi quen.
Trong R mi ci u c gi l object!

Lu v th mc
Th mc hin hnh:
getwd()
[1] "C:/Documents and
Settings/Administrator/My Documents"
save(x,file=Xvar)
chn th mc (khng g):
dir= choose.dir()
setwd(dir)
save(x,file=Xvar)

Lu v file
Khng g (d nhm)
filename=file.choose()
load(filename)
read.csv(filename)

Cc php tnh s hc v so snh


Nh Excel !
(1+2)*3/4
So snh (tr v TRUE, FALSE)

>
<
==
!=

Cc php tnh logic


X=2; Y=3
X>2 & Y>2
[1] FALSE
X>2 | Y>2
[1] TRUE

Kiu d liu vt l: mode

S (numeric)
X=2
Y=3.1
K t (character). 1 hay 2 du nhy.
name=Hoa
letter=1
Logical: FALSE, TRUE hay F, T
X=TRUE
X>2
mode(X)

Kiu d liu tru tng: class


Kiu numeric, character... l dng lu gi
trn my tnh, kiu vt l: mode()
Lp l kiu tru tng:
C khi i tng c mode v class ging
nhau.
x=matrix(c(2,3,4,3),c(2,1))
mode(x)
[1] "numeric
class(x)
[1] "matrix"

Bin nh tnh-nh lng


Stanley Smith Stevens (1946): On the
Theory of Scales of Measurement
Nominal: Gii tnh. nh tnh.
Ordinal: Xp loi sinh vin. nh tnh.
Interval: Nhit C. nh lng.
Ratio: Nhit tuyt i K. nh lng.
Thc t:
nh tnh khng th bc.
nh tnh c th bc.
nh lng.

Chuyn thnh nh tnh:factor()


Bin nh tnh trong R: factor.
D liu t file:
gi tr ch factor.
gi tr s (nam:0, n:1) nn chuyn thnh factor
sex = c('Nam','Nu','Nam','Nam','Nu')
mode(sex)
[1] "character
class(sex)
[1] "character
sex=factor(sex)
sex
[1] Nam Nu Nam Nam Nu
Levels: Nam Nu
mode(sex)
[1] "numeric
class(sex)
[1] "factor"

Chuyn thnh nh tnh:factor()


D liu kiu s nhng vn l nh tnh (m
ha, coding). Nam: 0, Nu: 1.
sex=c(1,0,1,1,1,0)
sex=factor(sex,labels=c(nam,nu))
sex
[1] nu nam nu nu nu nam
Levels: nam nu

nh tnh c th bc
factor: ordered=TRUE, xp levels.
ranks = c('G','K','G','G','K','TB','TB')
ranks=factor(ranks,ordered=T,levels=c('TB',
'K','G'))
ranks
[1] G K G G K TB TB
Levels: TB < K < G # OK!!!

Cc kiu d liu phc hp

Vector: dy cc phn t c cng kiu c


bn.

Matrix: ma trn, bng ch nht gm cc

phn t cng kiu.


List: danh sch, bao gm cc phn t m
mi phn t c bn cht v di khc
nhau.
Data.frame: Khung d liu, biu din bng
d liu trong phn tch.

Vector:
Dy cc phn t cng kiu (s, ch...)
nh danh bng ch s (indice).
To vector:
x=c(1,4,3);
x=c(Hoa, Hanh,Tam)
y= c(6, x);
x=x(x, 4,9)
To vector lin tc:
x= 1:20;
#1, 219,20
z =seq(0,4,0.2)
# 0.2, 0.4, 0.83.8,4.0
To vector lp li:
x= rep(3,2)
# 3,3

Vector: php tnh vector ho


Vectorized operator: element-wise
Tnh trn cp phn t tng ng.
x= c(1,2,4); y=c(3,5,7)
x+y l 4, 7, 11.
x*y l 3,10, 28.
sin(1:10) cho sin ca 1 n 10.
(1:10)^2
2^(1:10)

Vector: di length()
S lng phn t.
x= c(1,2,4); y=c(3,5,7)
length(x); length(y)
Vector rng
x=numeric(0)
y=logical(0)
length(x) #bng 0.

Vector: ly cc phn t

v = c(6,4,8,9,10,2)
C php chung: x[vector]
v[1]
Tr mt phn t no :
v[-2]
Khng lin tc:
v[c(2,3,4)]
Ly cc phn t lin tc:
v[1:5]
Ly cc phn t tr mt s phn t no :
v[-c(1,2)]
Ly cc phn t tha mn iu kin no
v[v> 8]
v[v==10]

Ma trn

M= matrix(c(1,2,3,11,12,13),nrow=2)
Row1=c(1,3,2)
Row2=c(2,11,13)
M=rbind(Rows,Cols)
Col1=c(1,2)
Col2=c(3,11)
Col3=c(12,13)
M=cbind(Rows,Cols)

Ma trn: di, chiu

length(M)
6
dim(M)
2 3 : 2 hng, 3 ct
Dng hm dim to ma trn
x= c(1,2,3,11,12,13)
dim(x)= c(2,3))

Ma trn: ly phn t
Hng trc, ct sau
M[2,3]
M[1,2]
trng: ly ht
M[,2]
M[2,]
M[,]

Mng: Array

A = array(1:24,c(2,3,4))
Mng c 3 chiu:

List Danh sch


List c th cha cc phn t c cc kiu
khc nhau.
list1 =
list(A,c(1,2),matrix(c(1,2,3,4),nrow=2))

List lu
Mt s hm ca R tr v list
x <- c(A = 20, B = 15, C = 25)
res=chisq.test(x)
names(res)
"statistic" "parameter" "p.value" "method"
"data.name" "observed" "expected"
"residuals" "stdres
res$expected
res$method

You might also like