Pular para o conteúdo principal

Tutorial de classificação em R usando order()

Neste tutorial, você aprenderá a classificar usando order(). Abordaremos como classificar vetores usando diferentes parâmetros, classificando quadros de dados e muito mais.
Actualizado 16 de jan. de 2025  · 6 min de leitura

O R oferece uma maneira diferente de classificar os dados em ordem crescente ou decrescente. Os analistas e cientistas de dados usam order(), sort() e pacotes como dplyr para classificar os dados, dependendo da estrutura dos dados obtidos.

order() pode classificar vetores, matrizes e também um dataframe pode ser classificado em ordem crescente e decrescente com sua ajuda, o que é mostrado na seção final deste tutorial.

Sintaxe de order()

A sintaxe de order() é mostrada abaixo:

order(x, decreasing = TRUE or FALSE, na.last = TRUE or FLASE, method = c("auto", "shell", "quick", "radix"))

O argumento acima, em order(), afirma que você deve ter em mente que o argumento é o seguinte

  • x: quadros de dados, matrizes ou vetores
  • decreasing: valor booleano; TRUE significa classificar em ordem decrescente ou FALSE significa classificar em ordem crescente.
  • na.last: valor booleano; TRUE significa que os índices NA são colocados por último ou FLASE significa que os índices NA são colocados primeiro.
  • method: método de classificação a ser usado.

order() in R

Vamos dar uma olhada em um exemplo de order() em ação.

Abaixo, o código contém a variável x, que inclui um vetor com uma lista de números. Os números são ordenados de acordo com seu índice usando order(x).

y = c(4,12,6,7,2,9,5)
order(y)

O código acima fornece o seguinte resultado:

5 1 7 3 4 6 2

Aqui, o order() classificará os números fornecidos de acordo com seu índice em ordem crescente. Como o número 2 é o menor, o índice é cinco e o número 4 é o índice 1, da mesma forma, o processo segue o mesmo padrão.

y = c(4,12,6,7,2,9,5)
y[order(y)]

O código acima fornece o seguinte resultado:

2 4 5 6 7 9 12

Aqui, a indexação da ordem é feita quando os valores reais são impressos em ordem crescente. Os valores são ordenados de acordo com o índice usando order() e, depois de cada valor acessado, usando y[some-value].

Vetor de classificação usando diferentes parâmetros em order()

Vejamos um exemplo em que os conjuntos de dados contêm o valor como símbolo NA(Não disponível).

order(x,na.last=TRUE)

x <- c(8,2,4,1,-4,NA,46,8,9,5,3)
order(x,na.last = TRUE)

O código acima fornece o seguinte resultado:

5 4 2 11 3 10 1 8 9 7 6

Aqui, o order() também classificará a lista de números fornecida de acordo com seu índice em ordem crescente. Como NA está presente, seu índice será colocado em último lugar, sendo que 6 será colocado em último lugar por causa de na.last=TRUE.

order(x,na.last=FALSE)

order(x,na.last=FALSE)

O código acima fornece o seguinte resultado:

6 5 4 2 11 3 10 1 8 9 7

Aqui, o order() também classificará a lista de números fornecida de acordo com seu índice em ordem crescente. Como NA está presente, seu índice, que é 6, será colocado em primeiro lugar por causa de na.last=FALSE.

order(x,decreasing=TRUE,na.last=TRUE)

order(x,decreasing=TRUE,na.last=TRUE)

O código acima fornece o seguinte resultado:

7 9 1 8 10 3 11 2 4 5 6

Aqui, order() classificará uma determinada lista de números de acordo com seu índice em ordem decrescente devido a decreasing=TRUE: 46. O maior é colocado no índice 7, e os outros valores são organizados de forma decrescente. Como NA está presente, o índice 6 será colocado em último lugar por causa de na.last=TRUE.

order(x,decreasing=FALSE,na.last=FALSE)

order(x,decreasing=FALSE,na.last=FALSE)

O código acima fornece o seguinte resultado:

6 5 4 2 11 3 10 1 8 9 7

Aqui, NA está presente, cujo índice é 6, e será colocado em primeiro lugar por causa de na.last=FALSE. order() classificará uma determinada lista de números de acordo com seu índice em ordem crescente por causa de decreasing=FALSE: -4, que é o menor colocado no índice 5, e os outros valores são organizados de forma crescente.

Comece a aprender R gratuitamente

Introdução ao R

BeginnerSkill Level
4
2.8M learners
Domine os conceitos básicos de análise de dados em R, incluindo vetores, listas e quadros de dados, e pratique o R com conjuntos de dados reais.
See DetailsRight Arrow

Intermediário R

BeginnerSkill Level
6
619.5K learners
Continue sua jornada para se tornar um ninja do R aprendendo sobre instruções condicionais, loops e funções vetoriais.

Classificando um quadro de dados usando order()

Vamos criar um dataframe em que o valor da população é 10. A variável gênero consiste em valores vetoriais "masculino" e "feminino", em que 10 valores de amostra podem ser obtidos com a ajuda de sample(), enquanto replace = TRUE gerará apenas os valores exclusivos. Da mesma forma, a idade consiste em um valor de 25 a 75, juntamente com um grau de valor possível como c("MA", "ME", "BE", "BSCS"), que novamente gerará valores exclusivos.

Tarefa: Para classificar os dados fornecidos em ordem crescente com base na idade da população fornecida.

Observação: Os dados de amostra mostrados podem ser diferentes quando você tenta usá-los em seu computador local, pois cada vez que um código é executado cria um quadro de dados exclusivo.

population = 10
gender=sample(c("male","female"),population,replace=TRUE)
age = sample(25:75, population, replace=TRUE)
degree = sample(c("MA","ME","BE","BSCS"), population, replace=TRUE)
(final.data = data.frame(gender=gender, age=age, degree=degree))
gênero idade grau
masculino 40 MA
feminino 57 BSCS
masculino 66 BE
feminino 61 BSCS
feminino 48 MA
masculino 25 MA
feminino 49 BE
masculino 52 ME
feminino 57 MA
feminino 35 MA

O código acima fornece o seguinte resultado, que mostra um dataframe recém-criado.

  gender       age        degree
   male           40         MA
   female       57         BSCS
   male           66         BE
   female       61         BSCS
   female       48        MA
   male           25         MA
   female       49         BE
   male        52        ME
   female       57         MA
   female       35         MA

Vamos classificar o dataframe em ordem crescente usando order() com base na variável idade.

order(final.data$age)

O código acima fornece o seguinte resultado:

6 10 3 9 5 8 4 2 7 1

Como a idade de 25 anos está no índice 6, seguida pela idade de 35 anos no índice 10 e, da mesma forma, todos os valores relacionados à idade são organizados em ordem crescente.

O código abaixo contém a ordem [] com a variável idade, é usado para organizar em ordem crescente onde o gênero, junto com as informações de graduação, também é impresso.

final.data[order(final.data$age),]
  gênero idade grau
6 masculino 25 MA
10 feminino 35 MA
1 masculino 40 MA
5 feminino 48 MA
7 feminino 49 BE
8 masculino 52 ME
2 feminino 57 BSCS
9 feminino 57 MA
4 feminino 61 BSCS
3 masculino 66 BE

O código acima fornece o seguinte resultado:

gender    age    degree
6    male    25    MA
10    female    35    MA
1    male    40    MA
5    female    48    MA
7    female    49    BE
8    male    52    ME
2    female    57    BSCS
9    female    57    MA
4    female    61    BSCS
3    male    66    BE

O resultado acima mostra que a idade é organizada em ordem crescente junto com o gênero correspondente e as informações sobre o grau são obtidas.

Parabéns a você

Parabéns, você chegou ao final deste tutorial!

Você aprendeu a classificar usando order() com seu argumento com os exemplos e o vetor de classificação usando parâmetros diferentes e o exemplo final, que contém a classificação do dataframe.

Para saber mais detalhes sobre esse tópico, você pode visitar a função Order no R

Se você quiser saber mais sobre o R, faça o curso Introdução ao R do DataCamp.

Temas

Cursos R

Certificação disponível

curso

Introdução ao R

4 hr
2.8M
Domine os conceitos básicos de análise de dados em R, incluindo vetores, listas e quadros de dados, e pratique o R com conjuntos de dados reais.
Ver DetalhesRight Arrow
Iniciar curso
Ver maisRight Arrow