A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

R Profa. Suzi

Apresentações semelhantes


Apresentação em tema: "R Profa. Suzi"— Transcrição da apresentação:

1 R Profa. Suzi camey@mat.ufrgs.br http://euler.mat.ufrgs.br/~camey/

2 Rweb http://www.math.montana.edu/Rweb/

3 Aula 17/05/07 Maiores detalhes: http://leg.ufpr.br/~paulojus/embrapa/Rembrapa/ Aritmética e Objetos Operações aritméticas Valores faltantes e especiais Objetos Tipos de objetos Vetores Matrizes Arrays Data-frames Listas Exercícios

4 Aritmética e Objetos Operações aritméticas >help(Arithmetic) sqrtraiz quadrada absvalor absoluto (positivo) sin cos tanfunções trigonométricas asin acos atanfunções trigonométricas inversas sinh cosh tanhfunções hiperbólicas asinh acosh atanhfunções hiperbólicas inversas exp logexponencial e logaritmo natural log10logaritmo base-10

5 Aritmética e Objetos Valores faltantes e especiais NA: Not Available, denota dados faltantes. Note que deve utilizar maiúsculas. NaN: Not a Number, denota um valor que não é representável por um número. Inf ; -Inf: mais ou menos innito. exp(1): e pi:

6 Aritmética e Objetos Objetos O R é uma linguagem orientada à objetos: variáveis, dados, matrizes, funções, etc são armazenados na memória ativa do computador na forma de objetos. >ls(): lista os objetos guardados na memória ativa

7 Aritmética e Objetos Como atribuir valores aos objetos: > x <- 25 > x * sqrt(x) -> x1 > x2.1 = sin(x1)

8 Aritmética e Objetos Como NÃO atribuir valores aos objetos: > 99a <- 10: nome do objeto deve começar com letra. > a1 <- sqrt 10: sqrt é uma função portanto exige ( ). > a-1 <- 99: não aceita hífen. > sqrt(x) <- 10: não faz sentido

9 Aritmética e Objetos Exemplos de nomes de objetos a serem evitados: c q s t C D F I T diff exp log mean pi range rank var Exemplos de nomes reservados: FALSE Inf NA NaN NULL TRUE break else for function if in next repeat while

10 Tipos de objetosTipos de objetos: VetoresVetores função c() ("c" de concaternar) é usada para criar um vetor Ex.: x<-c(2,3,52,9) Os colchetes [ ] são usados para indicar seleção de elementos. Ex.: x[2]

11 Tipos de objetosTipos de objetos: Vetores Vetores As funções rep(), seq() e o símbolo ":" são usadas para facilitar a criação de vetores que tenham alguma lei de formação. : Ex.: xx <- 100:1 >help(rep) Ex.:> rep(1:4, each = 12) > rep(1:4, rep(12, 4)) > rep(rep(1:3, each = 4), 4) > rep(1:4, 12) >help(seq) Ex.:> seq(1,10,1) >seq(1,10,2) > seq(10,1,3) > seq(10,1,-3)

12 Tipos de objetosTipos de objetos: Vetores Vetores Operações com vetores > x <- 1:10 > x + 2 > x * 2 > sqrt(x) > y <- 21:30 > x+y [1] 22 24 26 28 30 32 34 36 38 40 > z <- c(1,2) > x+z > w <- c(1,2,1) > x + w

13 Tipos de objetosTipos de objetos: Vetores Vetores Caracteres e Fatores Caracteres > c1 <- "Hello" > c2 <- c("Yes",'Maybe',"No") > c3 <- rep("Monkey",4) > c4 <- rep(c("Monkey","Bucket"),3) Fatores > c5 <- c('M','F','F','F','M','M') > f5 <- as.factor(c5) > levels(f5) > levels(f5) <- c("Female","Male") > alt <- c(175, 184, 180, 182, 176, 174, 169) > sexo <- as.factor(rep(0:1, c(4,3))) > levels(sexo) <- c("homem", "mulher") > table(sexo) > mean(alt) [1] 177.1429 > by(alt, sexo, mean) > ave(alt, sex)

14 Tipos de objetosTipos de objetos: Vetores Vetores Valores Lógicos gt5 5 Operadores Lógicos > x > 2 & x < 7 x 7 "TRUE" e "FALSE" como números... > y 3 > y*2 > sum(y)

15 Tipos de objetosTipos de objetos: Vetores Vetores Índices > y <- x[2] > y <- x[c(1,3,5)] > x[4:7] > x[12] Índices Negativos > x[-3] > x[c(3,4,7)] > x[-c(3,4,7)] > x[-length(x)] > x[length(x):1] Índices Lógicos > 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] > y[x == 4] > x[x > 5] > x <- c(3, 5, 3, 2, 5, 7, 5) > y <- c(23, 21, 20, 12, 20, 30, 29) > x == 5 > y[x == 5]

16 Tipos de objetosTipos de objetos: Matrizes Criando Matrizes > x <- 1:12 > xmat <- matrix(x,ncol=3) > matrix(x,ncol=3,byrow=T) > xmat<-matrix(0,2,3) > 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) Informações sobre a matriz > x1 <- matrix(1:12,ncol=4) > dim(x1) > summary(x1) > summary(as.vector(x1))

17 Tipos de objetosTipos de objetos: Matrizes Operações com matrizes Mesmas operações dos vetores > x1 <- matrix(1:6,ncol=2) > x2 <- matrix(6:1,ncol=3) > x1 %*% x2 > t(x1)*x2

18 Tipos de objetosTipos de objetos: Matrizes Índices das matrizes > z[2,5] > z[,4] > z[3,] > z[c(1,3,5),] > z[,5:7] > z[c(2,3),c(4,6)] Voce pode querer selecionar as pessoas (linhas) que atendem a um certo critério (idade, sexo, etc). Vamos definir uma matrix onde as colunas armazenam: índices 1 a 5, idade e sexo (codificado com 0/1) de cinco pessoas. > people <- cbind(c(1,2,3,4,5),c(43,55,52,23,46),c(1,1,0,1,1)) > oldies 50,] > people[,2] > people[,2]>50 > people[people[,2]>50, ]

19 Tipos de objetosTipos de objetos: ArraysArrays > ar1<-array(1:24,dim=c(3,4,2)) > ar1[,2:3,] > ar1[2,,1] > sum(ar1[,,1]) > sum(ar1[1:2,,1]) > dimnames(ar1) > dimnames(ar1)<-list(c("Baixo","Médio","Alto"),paste("col", +1:4,sep=""),c("Masculino","Feminino"))

20 Tipos de objetosTipos de objetos: ArraysArrays Veja agora um exemplo de dados já incluído no R no formato de array. > data(Titanic) > Titanic > help(Titanic) Quantas pessoas havia no total? > sum(Titanic) Quantas pessoas havia na tripulação (crew)? > sum(Titanic[4,,, ]) Quantas pessoas sobreviveram e quantas morreram? > apply(Titanic, 4, sum) Quantas crianças sobreviveram? > sum(Titanic[,, 1, 2]) Quais as proporções de sobreviventes entre homens e mulheres? > apply(Titanic, 2, sum) > apply(Titanic[,,, 2], 2, sum) > 100 * apply(Titanic[,,, 2], 2, sum)/apply(Titanic, 2, sum)

21 Tipos de objetosTipos de objetos: Data-framesData-frames Vetores, matrizes e arrays forçam todos os elementos a serem do mesmo "tipo"i.e., ou numérico ou caracter. O "data-frame"é uma estrutura semelhante à uma matriz porém com cada coluna sendo tratada separadamente. > d1 <- data.frame(X = 1:10, Y = c(51, 54, 61, 67, 68, 75, 77, 75, 80, 82)) > names(d1) > d1$X > d1$Y > plot(d1) > plot(d1$X, d1$Y) > d3 <- expand.grid(1:3,4:5) > d4 <- data.frame(X = letters[1:10], Y = c(51, 54, 61, 67, 68, 75, 77, 75, + 80, 82))

22 Tipos de objetosTipos de objetos: Listas Listas Listas são estruturas genéricas e exíveis que permitem armazenar diversos formatos em um único objeto. > lis1 <- list(A = 1:10, B = "THIS IS A MESSAGE", C = matrix(1:9, ncol = 3)) Uma lista é portanto uma coleção de objetos. Para listas há duas opções para se selecionar elementos: colchetes [ ] ou colchetes duplos [[ ]]. Entretanto os resultados retornados por cada um destes é diferente. > lis1 lis1[1] > lis1[2] > lis1[[2]]

23 Exercícios http://leg.ufpr.br/~paulojus/embrapa/Rembrapa/ Rembrapase6.html#x7-310006.8 http://leg.ufpr.br/~paulojus/embrapa/Rembrapa/ Rembrapase6.html#x7-310006.8


Carregar ppt "R Profa. Suzi"

Apresentações semelhantes


Anúncios Google