Pular para o conteúdo principal

Questão de Programação — R — Quadrix 2023

ProgramaçãoR
Código
qg027921
Banca
Quadrix
Órgão
CRM-MG
Ano
2023
Nível
Superior
Cargo
CRM - MG - Estatístico
Assinale a alternativa que apresenta a descrição correta do comportamento-padrão da função sort() na linguagem R.
  1. Acalcular o desvio-padrão de um vetor
  2. Bordenar um vetor em ordem crescente
  3. Cordenar um vetor em ordem decrescente
  4. Dtrocar, aleatoriamente, a ordem dos elementos de um vetor
  5. Econtar a quantidade de valores únicos em um vetor
Revelar gabarito e comentário

GabaritoB — ordenar um vetor em ordem crescente

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Função sort() na linguagem R

Gabarito: letra B. A função sort() na linguagem R tem como comportamento-padrão ordenar um vetor em ordem crescente, retornando um novo vetor com os elementos ordenados. As demais alternativas descrevem outras funções ou comportamentos que não correspondem ao padrão da sort().

A função sort() é uma das funções básicas mais utilizadas em R para ordenação de vetores. Por padrão, ela ordena os elementos em ordem crescente (do menor para o maior). Isso vale para vetores numéricos, de caracteres e lógicos. O comportamento padrão pode ser alterado pelo argumento decreasing = TRUE, que faz a ordenação em ordem decrescente. Além disso, a função sort() retorna um novo vetor ordenado, sem modificar o vetor original — a menos que se use sort(x) e atribua o resultado a uma variável.

Vamos entender melhor com um exemplo prático. Suponha que você tenha o vetor x <- c(3, 1, 2). Ao executar sort(x), o R retorna c(1, 2, 3), ou seja, os elementos em ordem crescente. Se você quiser ordem decrescente, usa sort(x, decreasing = TRUE), que retorna c(3, 2, 1). Note que o vetor original x permanece inalterado após a chamada de sort().

É importante distinguir a função sort() de outras funções relacionadas:

  • order(): retorna os índices que ordenariam o vetor, não os valores ordenados diretamente.

  • rank(): retorna a posição (classificação) de cada elemento no vetor ordenado.

  • rev(): inverte a ordem dos elementos, mas não ordena.

  • sample(): realiza uma amostragem aleatória, podendo embaralhar os elementos.

A banca explora justamente a confusão entre sort() e order(), ou entre ordenação crescente e decrescente. A pegadinha clássica é o candidato lembrar que existe um argumento decreasing e achar que o padrão é decrescente, quando na verdade o padrão é crescente. Outra pegadinha é confundir sort() com sample() (embaralhar) ou com funções estatísticas como sd() (desvio-padrão).

Guarde a fronteira: sort() = ordenar em ordem crescente por padrão; para decrescente, use decreasing = TRUE. É exatamente nessa fronteira que as alternativas se dividem.

1sort()
Ordena crescente (padrão)
Ordena decrescente (decreasing = TRUE)
Retorna novo vetor (não altera o original)
2order()
Retorna os índices que ordenariam
3rank()
Retorna a posição de cada elemento
4rev()
Inverte a ordem (não ordena)
5sample()
Embaralha aleatoriamente
Funções de ordenação em R
LEVELsoulevel.com.br
Funções de ordenação em R: sort() (Ordena crescente (padrão), Ordena decrescente (decreasing = TRUE), Retorna novo vetor (não altera o original)); order() (Retorna os índices que ordenariam); rank() (Retorna a posição de cada elemento); rev() (Inverte a ordem (não ordena)); sample() (Embaralha aleatoriamente)

Alternativa A — ❌ Incorreta

A alternativa afirma que sort() calcula o desvio-padrão de um vetor. Isso é função da sd() (standard deviation), não da sort(). A sort() não realiza nenhum cálculo estatístico; ela apenas reordena os elementos. O desvio-padrão é uma medida de dispersão, calculada pela função sd() em R.

Alternativa B — ✅ Correta ⟵ GABARITO

A alternativa descreve exatamente o comportamento-padrão da função sort(): ordenar um vetor em ordem crescente. Por padrão, sort(x) retorna os elementos de x em ordem crescente (do menor para o maior). Esse é o comportamento documentado e o mais utilizado na prática.

Alternativa C — ❌ Incorreta

A alternativa afirma que sort() ordena em ordem decrescente. Isso não é o padrão. Para obter ordem decrescente, é necessário usar o argumento decreasing = TRUE: sort(x, decreasing = TRUE). A banca explora a confusão entre o padrão (crescente) e a possibilidade de ordenação decrescente.

Alternativa D — ❌ Incorreta

A alternativa afirma que sort() troca aleatoriamente a ordem dos elementos. Isso é função da sample() (quando usada para permutar) ou da sample(x, length(x)) para embaralhar. A sort() é determinística: dado o mesmo vetor, sempre retorna a mesma ordenação. Não há aleatoriedade envolvida.

Alternativa E — ❌ Incorreta

A alternativa afirma que sort() conta a quantidade de valores únicos em um vetor. Isso é função da unique() (que retorna os valores únicos) combinada com length(), ou diretamente length(unique(x)). A sort() não conta nada; ela apenas ordena.

Gabarito: letra B

Link permanente: /questoes/qg027921