Beabá	 do
      Aa	 Bb	 Cc	 Dd	 Ee	 Ff	 Gg	 Hh	 Ii	 
     Jj	 Kk	 Ll	 Mm	 Nn	 Oo	 Pp	 Qq	 Rr	 
       Ss	 Tt	 Uu	 Vv	 Ww	 Xx	 Yy	 Zz
16 de janeiro de 2013
Rodrigo Rocha Gomes e Souza (rodrigorgs@gmail.com)
CPDx. Centro de Processamento de Dados (CPD), Universidade Federal da Bahia (UFBA)   https://blog.ufba.br/cpdx

 
    
       
         
            

     
 
   
 
              estatística
               mineração de dados
            visualização de dados
                                 ...

   
          
           
                       

     
 
   
 
 
     
      
                

   
          
           
                       
software liv e
multiplatafo ma
ápida!
dive sos
 pacotes
muito mate ial
fácil de integ ar
a outras linguagens
lê vá ias
fontes de dados
elatórios
em PDF (com LaTeX)
é uma linguagem
de prog amação
você p ecisa
saber estatística
bom para
g áficos estáticos
dados na
memó ia
mão na massa
Sumário

‣Tipos de dados: vetor, data frame

‣ Manipulação de dados
‣ Criação de gráficos

‣ Testes de hipótese
Construção de vetor: c()
‣ c(1, 2, 3, 4)
‣ 1:4 (igual ao anterior)
‣5      (vetor de um elemento)

‣ c(“a”, “b”, “c”, “a”)
‣ c(T, F, T, T)
Atribuição: <-

‣ nome <- “Fulano”
‣ temperaturas.maximas   <- c(27, 31, 28)

 ‣ (ponto faz parte do   nome da variável)

‣ x <- 1:10
Atribuição e Indexação

‣ x <- c(“a”, “b”, “c”, “d”,   “e”)

‣ x[1]                 # “a”

‣ x[c(1, 3)]           # “a”   “c”

‣ x[c(T, F, T, F, F)] # “a”    “c”
Modificação do vetor
‣ x[1] <- “A”
 ‣ “A” “b” “c” “d” “e”
‣ x[1:3] <- “Z”
 ‣ “Z” “Z” “Z” “d” “e”
‣ x[c(F, F, F, F, T)] <-   “U”

 ‣ “Z” “Z” “Z” “d” “U”
Funções
‣ notas <- c(9,   8, 9, 10, 7, 5, 7, 8)

‣ length(notas)   # 8

‣ sum(notas)      # 63

‣ mean(notas)     # 7.875 (média)

‣ sd(notas)       # 1.552648 (desvio-padrão)
NA: valor faltando
‣ notas[10] <- 9
 ‣ 9 8 9 10 7 5 7        8 NA   9

‣ mean(notas)
 ‣ NA
‣ mean(notas, na.rm=T)
 ‣8
Operações vetorizadas
‣ notas <- c(9, 8, 9, 10, 7, 5, 7,   8, 9, 9)

‣ notas * 2
 ‣ 18 16 18 20 14 10 14 16 18 18
‣ notas == 9
 ‣T F T F F F F F T T
Filtro

‣ notas   > 7 & notas < 10

 ‣T   T T   F   F   F   F   T T T

‣ notas   %in% c(8, 9)

 ‣T   T T   F   F   F   F   T T T
Filtro
‣ notas[c(T, T, T, F, F, F, F,    T, T, T)]

 ‣9 8 9 8 9 9
‣ notas[notas > 7 & notas < 10]
 ‣9 8 9 8 9 9
‣ notas[notas %in% c(8, 9)]
 ‣9 8 9 8 9 9
Outras coisas

‣ ifelse(notas   >= 7, “A”, “R”)

 ‣ "A" "A" "A"    "A" "R" "R" "R" "A" "A" "A"

‣ table(notas)
 ‣ 5 7 8 9        10
    1   2   2   4 1
Gráficos
‣ hist
‣ plot
‣ boxplot
‣ pie
‣ mosaicplot
Data frame
 nome      idade   altura
 Fulano      19     1.70
Beltrano     32     1.67
Sicrano      47     1.92
  John       82     1.61
  Paul       64     1.57
George       25     1.77
 Ringo       76     1.68
vetor      vetor   vetor
Carregando data frame


‣x   <- read.table(“arquivo”, sep=“t”, header=T)

‣x   <- read.csv(“arquivo”)
Indexação
‣ x$nome       # retorna coluna nome (um   vetor)

‣ x[ linhas, colunas ]
‣ x[1, ]       # data frame com primeira   linha

‣ x[ , 1] # primeira coluna (vetor)
‣ x[ , “nome”] # coluna nome
‣ x[1:3, c(“nome”, “altura”)]
Filtros

‣ x[x$idade   > 40, ]

‣ subset(x,   idade > 40)

‣ head(x)     # retorna primeiras 6 linhas

‣ tail(x)     # retorna últimas 6 linhas
Misc

‣ x$idade <-   2013 - x$ano.nascimento # nova coluna

‣ x$idade <-   NULL          # remover coluna

‣ summary(x)                 # sumário estatístico

‣ nrow(x)                    # número de linhas
Para saber mais

    The Art of R Programming
                   R in Action
http://www.statmethods.net/
  http://tryr.codeschool.com/
   http://www.r-project.org/

Beabá do R

  • 1.
    Beabá do Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz 16 de janeiro de 2013 Rodrigo Rocha Gomes e Souza (rodrigorgs@gmail.com) CPDx. Centro de Processamento de Dados (CPD), Universidade Federal da Bahia (UFBA) https://blog.ufba.br/cpdx
  • 5.
            
  • 7.
            estatística  mineração de dados   visualização de dados  ...      
  • 8.
                     
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
    fácil de integar a outras linguagens
  • 15.
  • 16.
  • 17.
    é uma linguagem deprog amação
  • 18.
    você p ecisa saberestatística
  • 19.
  • 20.
  • 21.
  • 24.
    Sumário ‣Tipos de dados:vetor, data frame ‣ Manipulação de dados ‣ Criação de gráficos ‣ Testes de hipótese
  • 25.
    Construção de vetor:c() ‣ c(1, 2, 3, 4) ‣ 1:4 (igual ao anterior) ‣5 (vetor de um elemento) ‣ c(“a”, “b”, “c”, “a”) ‣ c(T, F, T, T)
  • 26.
    Atribuição: <- ‣ nome<- “Fulano” ‣ temperaturas.maximas <- c(27, 31, 28) ‣ (ponto faz parte do nome da variável) ‣ x <- 1:10
  • 27.
    Atribuição e Indexação ‣x <- c(“a”, “b”, “c”, “d”, “e”) ‣ x[1] # “a” ‣ x[c(1, 3)] # “a” “c” ‣ x[c(T, F, T, F, F)] # “a” “c”
  • 28.
    Modificação do vetor ‣x[1] <- “A” ‣ “A” “b” “c” “d” “e” ‣ x[1:3] <- “Z” ‣ “Z” “Z” “Z” “d” “e” ‣ x[c(F, F, F, F, T)] <- “U” ‣ “Z” “Z” “Z” “d” “U”
  • 29.
    Funções ‣ notas <-c(9, 8, 9, 10, 7, 5, 7, 8) ‣ length(notas) # 8 ‣ sum(notas) # 63 ‣ mean(notas) # 7.875 (média) ‣ sd(notas) # 1.552648 (desvio-padrão)
  • 30.
    NA: valor faltando ‣notas[10] <- 9 ‣ 9 8 9 10 7 5 7 8 NA 9 ‣ mean(notas) ‣ NA ‣ mean(notas, na.rm=T) ‣8
  • 31.
    Operações vetorizadas ‣ notas<- c(9, 8, 9, 10, 7, 5, 7, 8, 9, 9) ‣ notas * 2 ‣ 18 16 18 20 14 10 14 16 18 18 ‣ notas == 9 ‣T F T F F F F F T T
  • 32.
    Filtro ‣ notas > 7 & notas < 10 ‣T T T F F F F T T T ‣ notas %in% c(8, 9) ‣T T T F F F F T T T
  • 33.
    Filtro ‣ notas[c(T, T,T, F, F, F, F, T, T, T)] ‣9 8 9 8 9 9 ‣ notas[notas > 7 & notas < 10] ‣9 8 9 8 9 9 ‣ notas[notas %in% c(8, 9)] ‣9 8 9 8 9 9
  • 34.
    Outras coisas ‣ ifelse(notas >= 7, “A”, “R”) ‣ "A" "A" "A" "A" "R" "R" "R" "A" "A" "A" ‣ table(notas) ‣ 5 7 8 9 10 1 2 2 4 1
  • 35.
    Gráficos ‣ hist ‣ plot ‣boxplot ‣ pie ‣ mosaicplot
  • 36.
    Data frame nome idade altura Fulano 19 1.70 Beltrano 32 1.67 Sicrano 47 1.92 John 82 1.61 Paul 64 1.57 George 25 1.77 Ringo 76 1.68 vetor vetor vetor
  • 37.
    Carregando data frame ‣x <- read.table(“arquivo”, sep=“t”, header=T) ‣x <- read.csv(“arquivo”)
  • 38.
    Indexação ‣ x$nome # retorna coluna nome (um vetor) ‣ x[ linhas, colunas ] ‣ x[1, ] # data frame com primeira linha ‣ x[ , 1] # primeira coluna (vetor) ‣ x[ , “nome”] # coluna nome ‣ x[1:3, c(“nome”, “altura”)]
  • 39.
    Filtros ‣ x[x$idade > 40, ] ‣ subset(x, idade > 40) ‣ head(x) # retorna primeiras 6 linhas ‣ tail(x) # retorna últimas 6 linhas
  • 40.
    Misc ‣ x$idade <- 2013 - x$ano.nascimento # nova coluna ‣ x$idade <- NULL # remover coluna ‣ summary(x) # sumário estatístico ‣ nrow(x) # número de linhas
  • 41.
    Para saber mais The Art of R Programming R in Action http://www.statmethods.net/ http://tryr.codeschool.com/ http://www.r-project.org/