tutorial de r e art pedro ribeiro de andrade dsa/ccst/inpe são josé dos campos, 2012
Post on 16-Apr-2015
108 Views
Preview:
TRANSCRIPT
Tutorial de R e aRT
Pedro Ribeiro de AndradeDSA/CCST/INPESão José dos Campos, 2012
O que é o aRT?
SGBD
Apresentação
http://wiki.dpi.inpe.br/doku.php?id=geopro:pedro:cursoart
4 aulas Aula 1: Introdução ao R Aula 2: Introdução ao Pacote sp Aula 3: Introdução ao aRT Aula 4: aRT avançado
1) Instalar R 2.15.1: www.r-project.org2) Instalar o Rstudio: http://rstudio.org/3) Instalar TerraView 4.2.0: www.dpi.inpe.br/terraview4) Instalar e configurar MySQL 5.5: www.mysql.com 5) Baixar e descompactar o arquivo
http://www.leg.ufpr.br/~pedro/CDaRT/aula.zip6) Executar o Rstudio:
1) Caso a máquina seja de 64 bits: Tools->Options->R version->change->32 bits. Fechar e abrir o Rstudio novamente.
2) Tools->Set working directory->Change directory para o diretório da pasta descompactada.
3) Abrir “gera-bancos.R”, dentro da pasta descompactada.4) Alterar a senha para a mesma da instalação do MySQL.5) Executar o comando: source("gera-bancos.R").6) Esperar a mensagem: “BANCOS DE DADOS GERADOS COM SUCESSO”
Instalação
Aula 1:Introdução ao RPedro Ribeiro de AndradeDSA/CCST/INPESão José dos Campos, 2009
Apresentação baseada no curso “Introdução ao R” (http://www.leg.ufpr.br/Rtutorial/)
www.r-project.org
Sobre o R Linguagem e ambiente Software livre Similar à linguagem e ambiente S Multiplataforma
ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)group <- gl(2,10,20, labels=c("Ctl","Trt"))weight <- c(ctl, trt)anova(lm.D9 <- lm(weight ~ group))summary(lm.D90 <- lm(weight ~ group - 1))opar <- par(mfrow = c(2,2), oma = c(0, 0, 1.1, 0)) plot(lm.D9, las = 1)
Interface gráfica X Linguagem de programação
Curva de aprendizado mais lenta Flexibilidade R em específico: métodos refletindo o estado-da-arte
Reprodutibilidade: “the ability of a test or experiment to be accurately reproduced, or replicated, by someone else working independently.”
“Como você fez isto?”
“Foi um mapa de kernel...”
“Foi um kernel quártico 100x100 com raio 2”
k = kernel2d(as.points(bod), bod$poly, h0=2, nx=100, ny=100)
plot(bod$poly, asp=1, type="n")
image(k, add=TRUE, col=terrain.colors(20))
pointmap(as.points(bod), add=TRUE)
polymap(bod$poly, add=TRUE)
Sweave: Reproducible ResearchFinally we will do a kernel analysis [...]<<>>=raster =kernel2d(as.points(bod), bod$poly, h0=2, nx=100,
ny=200)layer.raster <- createLayer(db, l="raster")addRaster(layer.raster, raster)@To get the layer's geometry call getGeometry [...]<<>>=plot(layer.raster)plot(layer.points,add=TRUE)plot(layer.pol, add=TRUE)@
http://www.leg.ufpr.br/~pedro/aRT/docs/aRTintro.html
Instalação: “R U ready?”
CRAN Binários: base e contrib Problemas com Windows Vista (instalar na
sua própria pasta)
R como uma calculadora
1+2+3
2+3*4
3/2+1
4*3**3
sqrt(2)
sin(3.14159)
sin(pi)
sqrt(tan(45*pi/180))
Operadores Lógicos1 == 2
1 != 2
1 <= 2
1 < 2
1 > 2
1 >= 2
T & T
T & F
T | T
T | F
((1 == 2) |(2 > 1)) & (4 >= sqrt(tan(45*pi/180)))
Variáveisx <- sin(pi)
x
x = sin(pi)
sin(pi) -> x
y <- sqrt(5)
y+x
x <- 25
x * sqrt(x) -> x1
x2.1 = sin(x1)
x2.2 = cos(x1)
xsq = x2.1**2 + x2.2**2
Vetores
x <- c(2,3,5,7,11)
y <- c(x,13,17,19)
xx <- 1:10
xx <- 100:1
seq(1,10,1)
seq(1,10,2)
seq(10,1,-3)
rep(1,10)
rep(c(1,2),10)
rep(4:1,1:4)
rep(c(23, 32, 42), c(3, 1, 2))
Operações com Vetores
x <- 1:10
x + 2
sqrt(x)
y <- 21:30
x+y
y <- c(1,2)
x+y
length(x)
rev(x)
summary(x)
x**x
Índices de Vetores
x[2]
y <- x[c(1,3,5)]
x[4:7]
x[12]
x <- c(6,5,6,4,4,3,4,2,3,4)
y <- c(5,3,4,2,6,5,4,5,4,3)
xeq4 <- x == 4
y[xeq4]
x[-3]
x[-c(3,4,7)]
x[y]
Funções
seq(1,27,3)
seq(from=1,to=27,by=3)
seq(from=1,to=27,length=4)
seq(f=1,t=27,l=4)
seq(t=27,l=4, f=1)
seq(1,4)
seq(1)
seq()
sqrt()
?seq
Matrizes
x <- 1:12
xmat <- matrix(x,ncol=3)
matrix(x,ncol=3,byrow=T)
dim(xmat)
summary(xmat)
summary(as.numeric(xmat))
x1 <- matrix(1:6,ncol=2)
x2 <- matrix(6:1,ncol=3)
x1*x2
x1 %*% x2
t(x1)*x2
cbind e rbind
COLUMNbind e ROWbind
x <- matrix(10:1,ncol=2)
y <- cbind(x,1:5)
y <- rbind(y,c(99,99,99))
z <- cbind(y,rep(88,6),y)
z <- cbind(y,88,y)
Acesso a Matrizes
people <- cbind(c(1,2,3,4,5,6),c(43,55,52,23,46,25))
people[1,2]
people[1:2,2]
people[1,]
people[,2]
people[-3,]
people[people[,2]>50,]
people <- people[,c(2,1)]
Matrizesxc = round(runif(10), 2)
yc = round(runif(10), 2)
xy = cbind(xc, yc)
rownames(xy)
colnames(xy)
rownames(xy)=1:10
xy["2",] # aspas duplas ou simples
xy[,"xc"]
rownames(xy)=2:11
xy[2:4,]
xy[paste(2:4),]
Data frame
plot(iris)
iris[,3]
iris[2,]
iris$Sepal.Length
iris[1:2, "Sepal.Length"]
iris[["Sepal.Width"]]
rownames(iris)
Listas
person<-list(age=21, name='Fred', score=c(65,78,55))
person$name
person$score[2]
person[[1]]
tt <- t.test(rnorm(1000,mean=1),
rnorm(1000,mean=1.2), var.equal=T)
is.list(tt)
names(tt)
tt$p.value
tt$estimate
Estruturas de dados
Vetor: coleção unidimensional com valores do mesmo tipo
Matriz: mxn com valores do mesmo tipo Data Frame: mxn com mesmo tipo em cada coluna Lista: coleção de vetores de tamanhos distintos
Plotagemx <- 1:20y <- x**3plot(x,y)plot(x,y,type="l") # tente também “b”,“o”,“s”,“c”,“h”
plot(x,y)points(rev(x),y)lines(x,8000-y, col="blue", lwd=5)
plot(x,y)points(rev(x),y,pch=3, col="red")points(x,8000-y,pch="$")
Plotagemplot(1:20, 1:20, pch = 1:20)
plot(x,y)lines(x,y,lwd=4) lines(rev(x),y,lty=2)
plot(c(0,20),c(-8000,8000),type='n') lines(x,y) lines(x,-y)
plot(x,y,xlab="Eixo X aqui",ylab="Eixo Y aqui")title("Título vai aqui!")text(6,4000,"Texto em qualquer lugar")
Plotagemplot(sin, -pi, 2*pi)
hist(c(2,2,2,2,2,3,3,3,4,4,5,5))barplot(table(c(2,2,2,2,2,3,3,3,4,4,5,5)))barplot(table(c(2,2,2,2,2,3,3,3,4,4,5,5)), hor=T)
par(mfrow=c(2,2)) plot(x,y)plot(x,log(y)) plot(rev(x),y)plot(rev(x), rev(y))par(mfrow=c(1,1))
Salvando gráficos
jpeg(...)...dev.off()
bmp(...)...dev.off()
png(...)...dev.off()
top related