[R-br] [R_STAT] Funções 'sort' e 'order' no R....
Ary Casado
ary_casado em yahoo.com.br
Terça Outubro 30 12:33:25 BRST 2012
Olá
A lista mudou para o endereço r-br em listas.c3sl.ufpr.br
Algumas considerações:
1) sort
sort faz uma classificação (crescente ou decrescente) simples e tem a sintaxe:
sort(x, decreasing = FALSE, ...)
onde x é o vetor a ser classificado, decreasing = false define que a classificação será em ordem crescente e ... significa que outros argumentos podem ser incrementados. Por exemplo: na.last = NA significa que valores que não foram definidos não vão ser listados. Outras opções seriam na.last = TRUE (os valores faltantes ficariam após o último valor classificado) e na.last=FALSE (os valores faltantes ficariam antes do primeiro valor classificado)
Tente os exemplos abaixo
> amostra <- c(4, 10, 3, -2, NA, 0, NA, 30, -5)
> sort(amostra) #É a classificação simples com os argumentos com seus valores padrões
[1] -5 -2 0 3 4 10 30
> sort(amostra, decreasing=TRUE, na.last=TRUE)
[1] 30 10 4 3 0 -2 -5 NA NA
2) order
A função order faz uma permutação que rearranja os valores em ordem crescente ou decrescente.
A sintaxe da função order é
order(..., na.last = TRUE, decreasing = FALSE)
onde ... é qualquer sequência válida. Talvez fique mais fácil você colocar um exemplo com caracteres de texto:
> letras1 <-c('g', 'a', 'z', 'c')
> order(letras1)
[1] 2 4 1 3
Observe que o vetor tem as letras fora da ordem, então a função order as ordena mostrando em qual posição está cada uma:
a está na posição 2
c está na posição 4
g está na posição 1
z está na posição 3
Se você utiliza o operador [ ] você seleciona um elemento através da posição dele na sequência ou no vetor.
então fica claro se você fizer
> letras1[order(letras1)]
o resultado será:
[1] "a" "c" "g" "z"
pois os colchetes determinam qual a posição do elemento que será retornado da lista.
quem está na posição 2? a
quem está na posição 4? c
quem está na posição 1? g
quem está na posição 3? z
NÃO SEI SE DÁ PRA FAZER A FUNÇÃO SORT SER MODIFICADA PARA FAZER O PAPEL DE ORDER.
Espero ter ajudado.
Ary Nascimento
Engenheiro Químico Consultor
Especialista em Informática
Mestrando em Ciências Nucleares - Proten - UFPE
________________________________
De: relatividade <alissonpereira_14 em hotmail.com>
Para: R_STAT em yahoogrupos.com.br
Enviadas: Terça-feira, 30 de Outubro de 2012 8:00
Assunto: [R_STAT] Funções 'sort' e 'order' no R....
Olá amigos tudo bem ? Espero que sim.
Sou novo aqui e gostaria muito da ajuda dos senhores para resolver um pequeno probleminha no R.
Então, estou com um probleminha com uma atividade que relaciona duas funções no R, é o seguinte:
Primeiro através da função sample é criado um vetor aleatótrio:
x <- sample(1:100, 20)
Depois aplico a função sort que tem como objetivo ordenar os elementos em ordem crescente
sort(x)
Ai o problema aplica a função order em x:
order(x)
----------------------------------------------------------
Ai o problema cita duas questões:
1) Qual é o objetivo da função order ?
2) Como emular, ou seja, como fazer que a função order realize o mesmo objetivo que a função sort mas sem utilizar a função sort. E vice-versa ?
Para a questão 2 obtive a ajuda de um colega onde este me deu à dica de fazer a primeira parte da questão da seguinte maneira:
Para fazer com que a função order execute o mesmo objetivo que a função sort, faz-se o seguinte:
x[order(x)]
*Se plotarmos este comando no R realmente o objetivo da primeira pate da questão é cumprido, porém não entendi o pq desses dois colchetes ?
** E como fazer com que a função sort realize o objetivo da função order mas sem utilizar o order ??
Agradeço muito mesmo se puderem me ajudar na questão 1 e nas questões acima (*) e (**)
__._,_.___
| através de email | Responder através da web | Adicionar um novo tópico Mensagens neste tópico (1)
Atividade nos últimos dias: * Novos usuários 3
Visite seu Grupo
Não passe mais um Dia dos Namorados sozinho(a). Conheça o Y! Encontros.<img width="1" height="1" alt="">
________________________________
O Dia dos Namorados está chegando. Encontre alguém especial até lá!<img width="1" height="1" alt="">
________________________________
Super Descontos HP <img width="1" height="1" alt="">
Trocar para: Só Texto, Resenha Diária • Sair do grupo • Termos de uso
.
__,_._,___
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20121030/61db7444/attachment.html>
Mais detalhes sobre a lista de discussão R-br