Ao final desta aula, você aprenderá:
- Abrir um banco de dados nos formatos csv e txt
- Usar funções e operações fundamentais para análise dos dados
- Separar o banco em subgrupos para analises posteriores.
Ao final desta aula, você aprenderá:
A maior parte dos bancos estão nos formatos:
Existem infinitos formatos de bancos de dados.
Ex:
setwd("~/Dropbox/cursos/r-psicologia/2-curso/aula-1-pratica")
Para abrir o banco, use a função:
str(read.csv)
## function (file, header = TRUE, sep = ",", quote = "\"", dec = ".", ## fill = TRUE, comment.char = "", ...)
dados <- read.csv("meubanco.csv")Abra o banco autoestima.csv.
dados <- read.csv("autoestima.csv")
Lista os nomes das variáveis.
names(dados)
## [1] "X" "v1" "v2" "v3" "v4" ## [6] "v5" "v6" "v7" "v8" "v9" ## [11] "v10" "v11" "v12" "v13" "v14" ## [16] "v15" "v16" "v17" "v18" "v19" ## [21] "v10r" "v11r" "v12r" "v13r" "v14r" ## [26] "v15r" "v16r" "v17r" "v18r" "v19r" ## [31] "somaescala"
! Os nomes são estranhos! Não deixe de consultar o dicionário do banco!!
Mostra a estrutura de um objeto
str(dados)
## 'data.frame': 56 obs. of 31 variables: ## $ X : int 1 2 3 4 5 6 7 8 9 10 ... ## $ v1 : Factor w/ 56 levels "22/07/2013 19:31:52",..: 1 2 3 4 5 6 7 8 9 10 ... ## $ v2 : logi NA NA NA NA NA NA ... ## $ v3 : int 22 23 22 21 26 20 27 16 23 22 ... ## $ v4 : logi NA NA NA NA NA NA ... ## $ v5 : logi NA NA NA NA NA NA ... ## $ v6 : Factor w/ 2 levels "Feminino","Masculino": 1 1 1 1 1 1 2 1 1 1 ... ## $ v7 : Factor w/ 3 levels "Casado(a)","Divorciado(a)/Separado(a)",..: 3 3 3 3 2 3 3 3 3 3 ... ## $ v8 : Factor w/ 5 levels "Ensino Fundamental Completo",..: 5 5 5 5 2 5 2 3 5 5 ... ## $ v9 : Factor w/ 2 levels "Não","Sim": 2 2 1 1 2 2 2 2 1 1 ... ## $ v10 : Factor w/ 3 levels "Concordo","Concordo Plenamente",..: 1 2 1 3 3 1 2 1 1 1 ... ## $ v11 : Factor w/ 4 levels "Concordo","Concordo Plenamente",..: 3 1 4 1 1 4 1 1 4 1 ... ## $ v12 : Factor w/ 3 levels "Concordo","Concordo Plenamente",..: 1 1 1 3 3 2 2 2 2 1 ... ## $ v13 : Factor w/ 3 levels "Concordo","Concordo Plenamente",..: 2 3 1 1 2 2 2 2 2 3 ... ## $ v14 : Factor w/ 4 levels "Concordo","Concordo Plenamente",..: 3 2 3 3 1 4 1 1 2 3 ... ## $ v15 : Factor w/ 4 levels "Concordo","Concordo Plenamente",..: 4 2 1 1 1 4 2 1 4 3 ... ## $ v16 : Factor w/ 3 levels "Concordo","Concordo Plenamente",..: 2 1 1 3 2 1 2 1 2 1 ... ## $ v17 : Factor w/ 4 levels "Concordo","Concordo Plenamente",..: 3 3 1 1 2 4 2 3 4 3 ... ## $ v18 : Factor w/ 4 levels "Concordo","Concordo Plenamente",..: 4 2 3 3 1 4 3 3 4 3 ... ## $ v19 : Factor w/ 4 levels "Concordo","Concordo Plenamente",..: 2 4 1 1 3 1 2 1 1 1 ... ## $ v10r : int 3 4 3 2 2 3 4 3 3 3 ... ## $ v11r : int 2 3 1 3 3 1 3 3 1 3 ... ## $ v12r : int 3 3 3 2 2 4 4 4 4 3 ... ## $ v13r : int 4 2 3 3 4 4 4 4 4 2 ... ## $ v14r : int 2 4 2 2 3 1 3 3 4 2 ... ## $ v15r : int 1 4 3 3 3 1 4 3 1 2 ... ## $ v16r : int 4 3 3 2 4 3 4 3 4 3 ... ## $ v17r : int 2 2 3 3 4 1 4 2 1 2 ... ## $ v18r : int 1 4 2 2 3 1 2 2 1 2 ... ## $ v19r : int 4 1 3 3 2 3 4 3 3 3 ... ## $ somaescala: int 26 30 26 25 30 22 36 30 26 25 ...
Mostra os primeiros e últimos valores, respectivamente
head(dados)
## X v1 v2 v3 v4 v5 v6 v7 ## 1 1 22/07/2013 19:31:52 NA 22 NA NA Feminino Solteiro(a) ## 2 2 22/07/2013 19:32:59 NA 23 NA NA Feminino Solteiro(a) ## 3 3 22/07/2013 19:34:35 NA 22 NA NA Feminino Solteiro(a) ## 4 4 22/07/2013 19:34:46 NA 21 NA NA Feminino Solteiro(a) ## 5 5 22/07/2013 19:35:16 NA 26 NA NA Feminino Divorciado(a)/Separado(a) ## 6 6 22/07/2013 19:37:39 NA 20 NA NA Feminino Solteiro(a) ## v8 v9 v10 v11 ## 1 Ensino Superior Incompleto Sim Concordo Discordo ## 2 Ensino Superior Incompleto Sim Concordo Plenamente Concordo ## 3 Ensino Superior Incompleto Não Concordo Discordo Plenamente ## 4 Ensino Superior Incompleto Não Discordo Concordo ## 5 Ensino Médio Completo Sim Discordo Concordo ## 6 Ensino Superior Incompleto Sim Concordo Discordo Plenamente ## v12 v13 v14 ## 1 Concordo Concordo Plenamente Discordo ## 2 Concordo Discordo Concordo Plenamente ## 3 Concordo Concordo Discordo ## 4 Discordo Concordo Discordo ## 5 Discordo Concordo Plenamente Concordo ## 6 Concordo Plenamente Concordo Plenamente Discordo Plenamente ## v15 v16 v17 ## 1 Discordo Plenamente Concordo Plenamente Discordo ## 2 Concordo Plenamente Concordo Discordo ## 3 Concordo Concordo Concordo ## 4 Concordo Discordo Concordo ## 5 Concordo Concordo Plenamente Concordo Plenamente ## 6 Discordo Plenamente Concordo Discordo Plenamente ## v18 v19 v10r v11r v12r v13r v14r v15r ## 1 Discordo Plenamente Concordo Plenamente 3 2 3 4 2 1 ## 2 Concordo Plenamente Discordo Plenamente 4 3 3 2 4 4 ## 3 Discordo Concordo 3 1 3 3 2 3 ## 4 Discordo Concordo 2 3 2 3 2 3 ## 5 Concordo Discordo 2 3 2 4 3 3 ## 6 Discordo Plenamente Concordo 3 1 4 4 1 1 ## v16r v17r v18r v19r somaescala ## 1 4 2 1 4 26 ## 2 3 2 4 1 30 ## 3 3 3 2 3 26 ## 4 2 3 2 3 25 ## 5 4 4 3 2 30 ## 6 3 1 1 3 22
Selecionar linhas ou colunas,
Ex:
dados[1:5, ] # Seleciona as linhas de 1 a cinco e lista todas as variáveis
## X v1 v2 v3 v4 v5 v6 v7 ## 1 1 22/07/2013 19:31:52 NA 22 NA NA Feminino Solteiro(a) ## 2 2 22/07/2013 19:32:59 NA 23 NA NA Feminino Solteiro(a) ## 3 3 22/07/2013 19:34:35 NA 22 NA NA Feminino Solteiro(a) ## 4 4 22/07/2013 19:34:46 NA 21 NA NA Feminino Solteiro(a) ## 5 5 22/07/2013 19:35:16 NA 26 NA NA Feminino Divorciado(a)/Separado(a) ## v8 v9 v10 v11 ## 1 Ensino Superior Incompleto Sim Concordo Discordo ## 2 Ensino Superior Incompleto Sim Concordo Plenamente Concordo ## 3 Ensino Superior Incompleto Não Concordo Discordo Plenamente ## 4 Ensino Superior Incompleto Não Discordo Concordo ## 5 Ensino Médio Completo Sim Discordo Concordo ## v12 v13 v14 v15 ## 1 Concordo Concordo Plenamente Discordo Discordo Plenamente ## 2 Concordo Discordo Concordo Plenamente Concordo Plenamente ## 3 Concordo Concordo Discordo Concordo ## 4 Discordo Concordo Discordo Concordo ## 5 Discordo Concordo Plenamente Concordo Concordo ## v16 v17 v18 ## 1 Concordo Plenamente Discordo Discordo Plenamente ## 2 Concordo Discordo Concordo Plenamente ## 3 Concordo Concordo Discordo ## 4 Discordo Concordo Discordo ## 5 Concordo Plenamente Concordo Plenamente Concordo ## v19 v10r v11r v12r v13r v14r v15r v16r v17r v18r v19r ## 1 Concordo Plenamente 3 2 3 4 2 1 4 2 1 4 ## 2 Discordo Plenamente 4 3 3 2 4 4 3 2 4 1 ## 3 Concordo 3 1 3 3 2 3 3 3 2 3 ## 4 Concordo 2 3 2 3 2 3 2 3 2 3 ## 5 Discordo 2 3 2 4 3 3 4 4 3 2 ## somaescala ## 1 26 ## 2 30 ## 3 26 ## 4 25 ## 5 30
Liste as três primeiras variáveis das linhas 1 até 10 do banco.
dados[1:10, 1:3] # Seleciona as linhas de 1 a 5 e listar todas as variáveis
## X v1 v2 ## 1 1 22/07/2013 19:31:52 NA ## 2 2 22/07/2013 19:32:59 NA ## 3 3 22/07/2013 19:34:35 NA ## 4 4 22/07/2013 19:34:46 NA ## 5 5 22/07/2013 19:35:16 NA ## 6 6 22/07/2013 19:37:39 NA ## 7 7 22/07/2013 19:43:43 NA ## 8 8 22/07/2013 19:44:34 NA ## 9 9 22/07/2013 19:50:35 NA ## 10 10 22/07/2013 19:52:49 NA
Outra resposta: dados[1:10, c("X","v1","v2")]
Ex: Usar dados de pessoas maiores de 18 anos.
dadosMaior <- subset(dados, dados$v3 >= 18)
Selecione as pessoas do sexo masculino e maiores que 18 anos
dados2 <- subset(dados, dados$v3 >= 18 & dados$v6 == "Feminino")
Selecione um banco com pessoas que possuem Ensino Superior Incompleto e sejam maiores que 22 anos.
dados2 <- subset(dados, dados$v3 >= 22 & dados$v8 == "Ensino Superior Incompleto")
Tabula o número de elementos.
table(dados$v7)
## ## Casado(a) Divorciado(a)/Separado(a) ## 9 1 ## Solteiro(a) ## 46
table(dados$v7 != "Solteiro(a)")
## ## FALSE TRUE ## 46 10
Quantas pessoas possuem mais de 20 anos?
table(dados$v3 > 20)
## ## FALSE TRUE ## 2 53