Quais os tipos de dados e como podemos ordena-los no R?

Veja quais os tipos de dados e classes existentes no R e como acessar seus dados após criar suas variáveis. Além disso, confira também quais os municípios de Santa Catarina têm mais nascentes.

Conhecer os tipos de dados existentes no R é uma questão primordial se você quer aprender a programar com R.

Por isso, nessa postagem, separamos os tipos de dados que podem ser utilizados no R e vamos ver quais são os municípios de Santa Catarina que apresentam maior número de nascentes.

Iremos utilizar os dados gerados na postagem “Contando Pontos dentro de Polígonos” no ArcGIS.

Mas caso você não utilize esse software, não se preocupe. Você pode baixar a planilha mun_nascentes e seguir nosso tutorial.

Tipos de Dados no R

Variáveis são utilizadas para armazenar diferentes tipos de informação e o acesso à essas informações ocorre de diversas formas. Por isso, é importante conhecermos detalhadamente os tipos de variáveis.

Os principais tipos de variáveis existentes no R são:

  • Vetores
  • Listas
  • Matrizes
  • Arrays
  • Fatores
  • Data Frames

Vetores

Os vetores são as variáveis mais simples do R. Dentro delas, podemos associar diferentes classes:

classe_log <- FALSE # Variável Lógica. Opções possíveis: FALSE ou TRUE
classe_num <- 15.3 # Variável Numérica (Qualquer número decimal)
classe_int <- 10L # Variável Inteira (Qualquer número inteiro)
classe_com <- 2+6i # Variável Complexa (Qualquer número complexo)
classe_car <- "Texto" # Variável Carácter (Qualquer Carácter)

Você pode utilizar o comando class() para verificar qual é a classe de uma variável, bastando inserir o nome da variável dentro da função.

Quando associamos um conjunto de dados à um vetor com comando c(), podemos acessar os dados usando colchetes e indicando a posição do item no vetor. Veja o exemplo:

vetor <- c("Engenharia","de","Meio","Ambiente")
vetor[3] # Retorna o item 3 da variável vetor, "Meio".

Listas

As listas são um tipo especial de variável dentro do R, pois elas podem armazenar diferentes tipos de classes dentro dela. Sua criação acontece usando a função list(), conforme código abaixo:

lista <- list(nome="Fernando", idade=28L, phd=FALSE, cursos_id=c(10, 12, 15))

Esse comando irá criar uma lista com 4 componentes (nome, idade, phd e cursos_id) de diferentes classes. Para acessar os componentes e seus dados, utilizaremos colchetes duplos após o nome da variável, e no caso do nosso quarto componente (curso_id), podemos utilizar mais um conjunto de colchetes para selecionar um dos três valores (caso os componentes tenham nomes, podemos acessa-los usando $ após a variável e o nome do componente). Veja o exemplo abaixo:

lista[[2]] # Apresentará como resultado o número inteiro 28L
lista[2] # Apresentará o nome do componente (idade) e seus valores associados (28L)
lista[[4]][3] # Apresentará como resultado o número 15.
lista$phd # Apresentará como resultado lógico FALSE
lista[["phd"]] # Idem resultado anterior

Matrizes

Matrizes são conjuntos de dados bidimensionais sendo criados pelo comando matrix(). Dentro dele, podemos definir o número de linhas (nrow), colunas (ncol) e se os dados serão inseridos por colunas (byrow = FALSE) ou linhas (byrow = TRUE). Veja o exemplo abaixo:

mat_2E <- matrix(data = 1:18, nrow = 6, ncol = 3, byrow=FALSE)

O acesso aos dados da matriz pode ser realizado utilizando-se colchetes, indicando a linha e a coluna, como o exemplo abaixo:

mat_2E[1,1] # Retorna o item da primeira linha e da primeira coluna
mat_2E[3,4] # Retorna o item da terceira linha e da quarta coluna
mat_2E[,4] # Retorna todos os itens da quarta coluna
mat_2E[1,] # Retorna todos os itens da primeira linha

Arrays

Os arrays são semelhantes às matrizes, mas podem ter mais que duas dimensões, onde o número de dimensões é configurado pelo termo dim. Os arrays são criados pela função array(), conforme código abaixo:

ar_2E <- array(data = c("Eng", "MSc", "PhD"), dim=c(4,4,2))

Aqui, criamos uma array com 2 matrizes de 4 linhas e 4 colunas. Para acessar seus dados, utilizaremos colchetes, indicando qual linha, coluna e matriz.

ar_2E[,,1] # Apresentará os dados da primeira matriz
ar_2E[,1,1] # Apresentará os dados da primeira coluna da primeira matriz
ar_2E[1,1,1] # Apresentará o dados na primeira linha, da primeira coluna, da primeira matriz

Fatores

Fatores são utilizados para criar rótulos, sendo bastante úteis em análises estatísticas, podendo ser ordenados ou não ordenados. O exemplo abaixo ilustra seu uso para classificação de resíduos.

residuos <- c("Classe I", "Classe I", "Classe IIA", "Classe IIB", "Classe I", "Classe IIB")
tipos_residuos <- factor(x = residuos)

Note que quando você acessar os dados da variável tipos_resíduos, irá ver uma linha chamada levels, indicando as classes que adotamos (Classe I, Classe IIA e Classe IIB), sem repeti-las.

Data Frames

E por fim, temos os Data Frames. Eles são tabelas e podem agrupar dados de diferentes classes em cada coluna, sendo criados pelo comando data.frame(). Veja o exemplo abaixo:

solos <- data.frame(
 amostra = c(1,2,3,4),
 horizonte = c("A","B","A1","A2"),
 mat_org = c(3.2, 0.4, 5.3, 4.4),
 pastagem = c(FALSE, FALSE, TRUE, TRUE)
)

Aqui criamos uma tabela para dados fictícios de solos. Para acessar seus parâmetros, podemos usar $ e puxar o nome da coluna, como também podemos utilizar colchetes.

solos$horizonte # Apresentará os horizontes coletados
solos$horizonte[2] # Apresentará o segundo valor da coluna Horizonte
solos[3] # Apresentará os valores de matéria orgânica
solos[3,2] # Apresentará a terceira linha da segunda coluna

Ordenando Dados (ou Nascentes)

Agora que conhecemos os tipos de dados, vamos carregar nossa planilha de dados no R (mun_nascentes) e acessarmos os 10 municípios com maior número de nascentes.
Lembre-se que você terá que converter o arquivo xls para csv – basta abrir o arquivo no Excel e clicar em Arquivo > Salvar como e salvar como csv.

nascentes <- read.csv(file = "[diretório]/mun_nascentes.csv", header=TRUE, sep=",",
 colClasses = c("character","numeric"))

Substitua o termo [diretório] pelo caminho onde você salvou o arquivo csv, e veja que utilizamos o comando colClasses para definir quais serão as classes das nossas duas colunas. Assim, a partir da nossa variável nascente, iremos executar o comando order().

ord_nasc1 <- nascentes[order(-nascentes$num_nasc),] # Ordem decrescente de número de nascentes
ord_nasc2 <- nascentes[order(-nascentes$num_nasc),] # Ordem crescente de número de nascentes
ord_nasc1[1:10,] # Mostra as 10 primeiras linhas da nossa variável

Ao executarmos nosso ultimo comando, o R irá nos mostrar as linhas 1 até 10 (por isso os dois pontos, 1:10), dessa forma, temos os municípios com mais nascentes em Santa Catarina.

Os três primeiros municípios são Lages, Otácilio Costa e Bom Retiro. Considerando que Lages é o maior município de Santa Catarina, será que ele tem mais nascentes por causa da sua área? Ou será que são as suas condições ambientais que propiciam maior número de nascentes?

Outra análise interessante é calcular a densidade de nascentes (pois quanto maior o território do município, mais nascentes teremos), mas isso deixaremos para outra postagem.



Clique na figura abaixo e assine nossa lista de emails para receber nosso ebook "Como criar mapas de localização com ArcGIS 10.x".


Author: Fernando BS

Engenheiro Ambiental e de Segurança do Trabalho. Atua nas áreas de recuperação ambiental, geoprocessamento e ciência do solo. Busca soluções utilizando softwares como ArcGIS, R e MATLAB.

3 thoughts on “Quais os tipos de dados e como podemos ordena-los no R?”

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *