SlideShare uma empresa Scribd logo
1 de 41
Baixar para ler offline
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/

Mais conteúdo relacionado

Semelhante a Beabá do R

IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonIEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonDiogo Gomes
 
Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1Isaac Barros
 
Aula5 introducao c
Aula5 introducao cAula5 introducao c
Aula5 introducao cprofwtelles
 
Capítulo 14 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 14 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 14 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 14 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Os Fantasmas !
 
Apostila Algoritmos e Estrutura de Dados (AEDS)
Apostila Algoritmos e Estrutura de Dados (AEDS)Apostila Algoritmos e Estrutura de Dados (AEDS)
Apostila Algoritmos e Estrutura de Dados (AEDS)Ricardo Terra
 
Tutoriais para criação e edição de gráficos no r
Tutoriais para criação e edição de gráficos no rTutoriais para criação e edição de gráficos no r
Tutoriais para criação e edição de gráficos no rAna Maria Souza
 
Uso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sqlUso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sqlLocaweb
 
Conhecendo ou relembrando C
Conhecendo ou relembrando CConhecendo ou relembrando C
Conhecendo ou relembrando CVinícius Hax
 
mod5-estruturas-dadosdinamicas
mod5-estruturas-dadosdinamicasmod5-estruturas-dadosdinamicas
mod5-estruturas-dadosdinamicasdiogoa21
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaLeinylson Fontinele
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Leinylson Fontinele
 
Estrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na práticaEstrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na práticaLeinylson Fontinele
 
Curso matlab 6 especiais
Curso matlab 6 especiaisCurso matlab 6 especiais
Curso matlab 6 especiaisJosh Santos
 
Capitulo 1scilab
Capitulo 1scilabCapitulo 1scilab
Capitulo 1scilabwjunior
 
Otimizações em Sistemas de Armazenamento mediadas por anotações em Metadados
Otimizações em Sistemas de Armazenamento mediadas por anotações em MetadadosOtimizações em Sistemas de Armazenamento mediadas por anotações em Metadados
Otimizações em Sistemas de Armazenamento mediadas por anotações em Metadadosricardoas
 
fuchigami-2019-minicurso-julia-ermac-bauru.pdf
fuchigami-2019-minicurso-julia-ermac-bauru.pdffuchigami-2019-minicurso-julia-ermac-bauru.pdf
fuchigami-2019-minicurso-julia-ermac-bauru.pdfLEANDROHENRICKSILVAN
 

Semelhante a Beabá do R (20)

IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonIEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
 
Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1
 
Aula5 introducao c
Aula5 introducao cAula5 introducao c
Aula5 introducao c
 
Aula5 introducao c
Aula5 introducao cAula5 introducao c
Aula5 introducao c
 
Capítulo 14 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 14 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 14 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 14 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
 
Apostila aed
Apostila aedApostila aed
Apostila aed
 
Apostila Algoritmos e Estrutura de Dados (AEDS)
Apostila Algoritmos e Estrutura de Dados (AEDS)Apostila Algoritmos e Estrutura de Dados (AEDS)
Apostila Algoritmos e Estrutura de Dados (AEDS)
 
Tutoriais para criação e edição de gráficos no r
Tutoriais para criação e edição de gráficos no rTutoriais para criação e edição de gráficos no r
Tutoriais para criação e edição de gráficos no r
 
Uso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sqlUso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sql
 
Conhecendo ou relembrando C
Conhecendo ou relembrando CConhecendo ou relembrando C
Conhecendo ou relembrando C
 
Curso Básico de R
Curso Básico de RCurso Básico de R
Curso Básico de R
 
mod5-estruturas-dadosdinamicas
mod5-estruturas-dadosdinamicasmod5-estruturas-dadosdinamicas
mod5-estruturas-dadosdinamicas
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na prática
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
 
Estrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na práticaEstrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na prática
 
Destistificando o EXPLAIN
Destistificando o EXPLAIN Destistificando o EXPLAIN
Destistificando o EXPLAIN
 
Curso matlab 6 especiais
Curso matlab 6 especiaisCurso matlab 6 especiais
Curso matlab 6 especiais
 
Capitulo 1scilab
Capitulo 1scilabCapitulo 1scilab
Capitulo 1scilab
 
Otimizações em Sistemas de Armazenamento mediadas por anotações em Metadados
Otimizações em Sistemas de Armazenamento mediadas por anotações em MetadadosOtimizações em Sistemas de Armazenamento mediadas por anotações em Metadados
Otimizações em Sistemas de Armazenamento mediadas por anotações em Metadados
 
fuchigami-2019-minicurso-julia-ermac-bauru.pdf
fuchigami-2019-minicurso-julia-ermac-bauru.pdffuchigami-2019-minicurso-julia-ermac-bauru.pdf
fuchigami-2019-minicurso-julia-ermac-bauru.pdf
 

Mais de Rodrigo Rocha

Aula: busca e ordenação
Aula: busca e ordenaçãoAula: busca e ordenação
Aula: busca e ordenaçãoRodrigo Rocha
 
Patterns for Cleaning Up Bug Data
Patterns for Cleaning Up Bug DataPatterns for Cleaning Up Bug Data
Patterns for Cleaning Up Bug DataRodrigo Rocha
 
Mineração de Repositórios de Defeitos
Mineração de Repositórios de DefeitosMineração de Repositórios de Defeitos
Mineração de Repositórios de DefeitosRodrigo Rocha
 
2011 seminario rodrigo 2011
2011 seminario rodrigo 20112011 seminario rodrigo 2011
2011 seminario rodrigo 2011Rodrigo Rocha
 
2012 qualificacao-rodrigo-2012
2012 qualificacao-rodrigo-20122012 qualificacao-rodrigo-2012
2012 qualificacao-rodrigo-2012Rodrigo Rocha
 
2012 doutorado - visita de dalton - comentarios de dalton, roberto e christina
2012 doutorado - visita de dalton - comentarios de dalton, roberto e christina2012 doutorado - visita de dalton - comentarios de dalton, roberto e christina
2012 doutorado - visita de dalton - comentarios de dalton, roberto e christinaRodrigo Rocha
 
Características de apps
Características de appsCaracterísticas de apps
Características de appsRodrigo Rocha
 
Characterizing Verification of Bug Fixes in Two Open Source IDEs (MSR 2012)
Characterizing Verification of Bug Fixes in Two Open Source IDEs (MSR 2012)Characterizing Verification of Bug Fixes in Two Open Source IDEs (MSR 2012)
Characterizing Verification of Bug Fixes in Two Open Source IDEs (MSR 2012)Rodrigo Rocha
 

Mais de Rodrigo Rocha (9)

Aula: busca e ordenação
Aula: busca e ordenaçãoAula: busca e ordenação
Aula: busca e ordenação
 
Patterns for Cleaning Up Bug Data
Patterns for Cleaning Up Bug DataPatterns for Cleaning Up Bug Data
Patterns for Cleaning Up Bug Data
 
Mineração de Repositórios de Defeitos
Mineração de Repositórios de DefeitosMineração de Repositórios de Defeitos
Mineração de Repositórios de Defeitos
 
2011 seminario rodrigo 2011
2011 seminario rodrigo 20112011 seminario rodrigo 2011
2011 seminario rodrigo 2011
 
2012 qualificacao-rodrigo-2012
2012 qualificacao-rodrigo-20122012 qualificacao-rodrigo-2012
2012 qualificacao-rodrigo-2012
 
2012 doutorado - visita de dalton - comentarios de dalton, roberto e christina
2012 doutorado - visita de dalton - comentarios de dalton, roberto e christina2012 doutorado - visita de dalton - comentarios de dalton, roberto e christina
2012 doutorado - visita de dalton - comentarios de dalton, roberto e christina
 
Características de apps
Características de appsCaracterísticas de apps
Características de apps
 
Mercado de apps
Mercado de appsMercado de apps
Mercado de apps
 
Characterizing Verification of Bug Fixes in Two Open Source IDEs (MSR 2012)
Characterizing Verification of Bug Fixes in Two Open Source IDEs (MSR 2012)Characterizing Verification of Bug Fixes in Two Open Source IDEs (MSR 2012)
Characterizing Verification of Bug Fixes in Two Open Source IDEs (MSR 2012)
 

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
  • 2.
  • 3.
  • 4.
  • 5.         
  • 6.
  • 7.         estatística  mineração de dados   visualização de dados  ...      
  • 8.                  
  • 14. fácil de integ ar a outras linguagens
  • 15. lê vá ias fontes de dados
  • 17. é uma linguagem de prog amação
  • 18. você p ecisa saber estatística
  • 19. bom para g áficos estáticos
  • 22.
  • 23.
  • 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/