[1] 1 2 3 4 5
[1] "numeric"
[1] "integer"
[[1]]
[1] 1 2 3 4 5
[[2]]
[1] 20
[[3]]
[1] TRUE
Manipulação e visualização de dados no R
2/5/23
Técnicas de manipulação de dados no R utilizando o tidyverse
: importação e transformação de dados. Técnicas para extração de informações dos dados: construindo visualizações. Uso do pacote ggplot2
para gerar gráficos. Uso do R para visualização espacial e construção de mapas. Comunicação utilizando markdown
e Quarto
.
Neste curso iremos utilizar a plataforma Google Classroom para organizar as atividades - vocês receberão um e-mail contendo um convite para fazer o acesso.
As aulas são práticas e serão inteiramente presenciais, sendo necessário o uso de computadores pessoais para acompanhar. Os scripts utilizados são disponibilizados em https://rpubs.com/scalon.
O aprendizado será fixado por duas formas: exercícios direcionais com manipulação de banco de dados baseados nos desafios de tidytuesday (https://github.com/rfordatascience/tidytuesday) e o uso dos dados pessoais para aplicar os conhecimentos adquiridos.
Às quintas-feiras teremos exposição de conteúdo, e às terças-feiras teremos a correção dos exercícios em conjunto. Além disso, teremos um fórum de discussões para facilitar a comunicação durante toda disciplina.
Avaliação:
Bibliografia Básica
Aula | Objetivos |
---|---|
Introdução | Alinhar as expectivas da turma com a disciplina |
R basico | Entender o estilo de programação, a estrutura e tipos de objetos e como importar arquivos com os dados |
Quarto/Markdown |
Aprender a utilizar o Quarto para visualização e comunicação de códigos, dados e figuras |
Exercício e Correção | Fixar o conteúdo a partir de exercícios práticos |
Funcionalidades do Rstudio https://posit.co/
Editor, console, output e environment
Verificar versão atualizada
- Atribuindo objetos a nomes (<- ou CTRL-)
- R diferencia capitalização
- Tipos de objetos
- Numeric: 12.3, 5, 999
- Character: "bom", "verdadeiro"
- Integer - números inteiros
- Complex - 3 + 2i
- Logical – TRUE/ FALSE
- Tipos de objetos
- Vector
- List
- Matrix
- Array
- Factor
- Data frame
Porque isso importa?
# factor
# vector of characters
f <- c("Lula", "Alckmin", "Dilma")
factor_f <- factor(f)
print(factor_f)
[1] Lula Alckmin Dilma
Levels: Alckmin Dilma Lula
# data frame
g <- data.frame(
gender = c("Male", "Male","Female", "Female"),
height = c(152, 171.5, 165, 155),
Age = c(42,38,26,20))
print(g)
gender height Age
1 Male 152.0 42
2 Male 171.5 38
3 Female 165.0 26
4 Female 155.0 20
- ls()
- head()
- summary()
- str()
- Set working directory (recomendado!) ou esceve todo caminho de onde seus dados estão
- Planilhas em excel
- Transformar em .csv ou .txt (separado por vírgulas)
- read.csv(), read.csv2() ou read.table()
- Caso dado faltante, completar tabela com NA (read.csv não precisa!!)
- Diretamente do excel com o pacote readxl
- Usando ferramentas do RStudio
- Outros formatos
- SQL (pacote DBI)
- XML (pacote xml2)
- HTML (pacote XML, RCurl ou rvest)
#####################################
###Definindo o diretório de trabalho#
#####################################
#setwd("C:/Marina/Pos-doutorado/PNPD_RFPR/Vis Man Dados/2023/Aula 1")
##################
#Importando dados#
##################
# x <- read.csv("Dados.csv")
x <- readr::read_csv('https://raw.githubusercontent.com/scalonmc/VisMan/master/VisManDados/Aula1/dados.csv')
head(x)
# A tibble: 6 x 13
Amostra Tratamento especie Grupo individuo N P Mg K Ca
<dbl> <chr> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 1 Floresta AT D 1 2.36 0.114 0.150 1.20 0.319
2 2 Floresta AT D 2 2.07 0.114 0.180 1.44 0.413
3 3 Floresta AT D 3 2.03 0.121 0.133 0.366 0.371
4 4 Floresta BC B 1 1.32 0.0643 0.159 0.679 0.576
5 5 Floresta BC B 2 1.23 0.0714 0.113 0.957 0.458
6 6 Floresta BC B 3 1.37 0.0786 0.116 0.75 0.347
# ... with 3 more variables: Al_ppm <dbl>, area <dbl>, peso <dbl>
# A tibble: 6 x 13
Amostra Tratamento especie Grupo individuo N P Mg K Ca
<dbl> <chr> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 81 Campo SA B 3 2.03 0.0643 0.064 0.433 0.216
2 82 Campo SM S 1 0.848 0.0643 0.0722 0.385 0.172
3 83 Campo SM S 2 0.942 0.0714 0.0683 0.401 0.227
4 84 Campo SM S 3 1.18 0.05 0.108 0.752 0.248
5 85 Campo SP S 1 1.27 0.05 0.0853 0.807 0.127
6 86 Campo SP S 2 1.32 0.05 0.112 0.695 0.414
# ... with 3 more variables: Al_ppm <dbl>, area <dbl>, peso <dbl>
Amostra Tratamento especie Grupo
Min. : 1.00 Length:129 Length:129 Length:129
1st Qu.: 33.00 Class :character Class :character Class :character
Median : 67.00 Mode :character Mode :character Mode :character
Mean : 79.82
3rd Qu.: 99.00
Max. :256.00
individuo N P Mg
Min. :1.000 Min. :0.612 Min. :0.03570 Min. :0.0053
1st Qu.:1.000 1st Qu.:1.225 1st Qu.:0.06430 1st Qu.:0.0745
Median :2.000 Median :1.413 Median :0.07140 Median :0.1026
Mean :1.977 Mean :1.704 Mean :0.08012 Mean :0.1124
3rd Qu.:3.000 3rd Qu.:2.026 3rd Qu.:0.08570 3rd Qu.:0.1471
Max. :3.000 Max. :4.994 Max. :0.22860 Max. :0.2745
K Ca Al_ppm area
Min. :0.1910 Min. :0.0725 Min. : 19.3 Min. : 34.34
1st Qu.:0.3760 1st Qu.:0.1738 1st Qu.: 116.3 1st Qu.:137.17
Median :0.5090 Median :0.2727 Median : 180.8 Median :192.61
Mean :0.6624 Mean :0.3319 Mean : 1763.2 Mean :204.89
3rd Qu.:0.8140 3rd Qu.:0.4584 3rd Qu.: 419.5 3rd Qu.:257.68
Max. :2.4910 Max. :0.9681 Max. :15012.5 Max. :573.53
NA's :3
peso
Min. :0.2584
1st Qu.:1.8373
Median :2.4810
Mean :2.9656
3rd Qu.:3.8455
Max. :9.4754
NA's :3
spec_tbl_df [129 x 13] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
$ Amostra : num [1:129] 1 2 3 4 5 6 7 8 9 10 ...
$ Tratamento: chr [1:129] "Floresta" "Floresta" "Floresta" "Floresta" ...
$ especie : chr [1:129] "AT" "AT" "AT" "BC" ...
$ Grupo : chr [1:129] "D" "D" "D" "B" ...
$ individuo : num [1:129] 1 2 3 1 2 3 1 2 3 1 ...
$ N : num [1:129] 2.36 2.07 2.03 1.32 1.23 ...
$ P : num [1:129] 0.1143 0.1143 0.1214 0.0643 0.0714 ...
$ Mg : num [1:129] 0.15 0.18 0.133 0.159 0.113 ...
$ K : num [1:129] 1.197 1.444 0.366 0.679 0.957 ...
$ Ca : num [1:129] 0.319 0.413 0.371 0.576 0.458 ...
$ Al_ppm : num [1:129] 122.8 251.8 206.5 96.8 103.3 ...
$ area : num [1:129] 288 262 184 149 263 ...
$ peso : num [1:129] 3.63 2.49 2.16 1.86 4.39 ...
- attr(*, "spec")=
.. cols(
.. Amostra = col_double(),
.. Tratamento = col_character(),
.. especie = col_character(),
.. Grupo = col_character(),
.. individuo = col_double(),
.. N = col_double(),
.. P = col_double(),
.. Mg = col_double(),
.. K = col_double(),
.. Ca = col_double(),
.. Al_ppm = col_double(),
.. area = col_double(),
.. peso = col_double()
.. )
- attr(*, "problems")=<externalptr>
Após instalados ficam na sua biblioteca e precisam ser carregados para usar as funções
com foco em compartilhar scripts (não vamos abordar demais usos!)
Vamos aprender:
Fazer um documento no Quarto utilizando todos os recursos de texto.
Nesse documento, me fale um pouco sobre você: fique à vontade para listar suas dificuldades e anseios, e também demarcar as suas qualidades e tudo que você alcançou até o momento. NÃO é um documento formal! Quero conhecer vocês! E ao mesmo tempo, quero que vocês se familiarizem com o R e com o Quarto!
Numa segunda etapa, escreva brevemente sobre seu projeto (hipóteses e objetivos), tipo de dados que foram ou serão coletados, etc. Com a sua planilha de dados coletados para o projeto, importe os dados, descreva as variáveis (use as funções ensinadas na aula para demostrar a natureza dos seus próprios dados). Se quiser pode inserir gráficos, figuras, links… Explore as possibilidades!