[R-br] eliminar valores de data.frame

Paulo Nogueira paulons em gmail.com
Terça Maio 22 23:27:54 BRT 2012


Vitor,
você faz bem de tentar entender os códigos que o pessoal coloca no grupo ao
invés de apenas roda-los.
É uma ótima forma de aprender R.

Você disse que sua base tem 30 colunas. O programa que escrevi gera 30
vetores chamados Coluna1, Coluna2, ..., Coluna30 que contém o que os
elementos que você precisa, segundo seu primeiro e-mail.

abraços,
Paulo

Em 22 de maio de 2012 21:32, Vitor Aguiar <vitor.aguiar em me.com> escreveu:
> Olá Paulo,
>
> muito obrigado.
>
> Como eu estou apenas aprendendo programação, testei o seu código mas
ainda estou tentando compreender o resultado. Como assim gerar 30 vetores
na área de trabalho?
>
> Pensei em outra coisa que também resolveria minha situação: substituir
todos os valores que aparecem menos que 5 vezes no conjunto de dados por
NA. Seria mais simples fazer isso?
>
>
> Obrigado,
> Vitor
>
>
>
> On May 22, 2012, at 11:04 AM, Paulo Nogueira wrote:
>
>> Vitor,
>> você não mandou um CMR, mas assumindo que as colunas são comparadas
>> duas a duas (coluna1 x coluna2, coluna3 x coluna4, etc) o programa
>> abaixo deve resolver a situação.
>> Serão gerados 30 vetores na área de trabalho.
>>
>> Faça os testes.
>>
>>
>> # Exemplo de dados
>> dados<-trunc(rnorm(30*100000,30,5))
>> attr(dados, 'dim')<-c(100000,30)
>> ##
>>
>> for (i in seq(1,30,by=2)) {
>>
>>  t<-table(dados[,c(i,i+1)])
>>  n<-attributes(t[t<5])$dimnames[[1]]
>>
>>  assign(paste('Coluna',i,sep=''),dados[!dados[,(i)]%in%as.numeric(n),i])
>>
 assign(paste('Coluna',i+1,sep=''),dados[!dados[,(i+1)]%in%as.numeric(n),(i+1)])
>> }
>>
>>
>> Em 21/05/12, Vitor Aguiar<vitor.aguiar em me.com> escreveu:
>>> Caros,
>>>
>>> tenho um data frame com 30 colunas e 100 mil linhas, composto de valores
>>> numéricos de 1 a 65. Gostaria de eliminar todos os valores que aparecem
>>> menos de 5 vezes, em cada 2 colunas consecutivas separadamente.
>>>
>>> Por exemplo, se o valor "18" aparece 4 vezes entre os 200.000 valores
das
>>> minhas 2 primeiras colunas, eu gostaria de eliminar todos os 4.
>>>
>>> Eu sei que no final eu teria colunas de lengths diferentes no meu data
>>> frame, mas eu não preciso recriar o data frame, eu só preciso usar os
pares
>>> de colunas separadamente.
>>>
>>> Como fazer isso?
>>>
>>> Desde já, muito obrigado aos que puderem ajudar.
>>>
>>>
>>> Vitor Aguiar
>>>
>>>
>> _______________________________________________
>> R-br mailing list
>> R-br em listas.c3sl.ufpr.br
>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
código mínimo reproduzível.
>
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
código mínimo reproduzível.
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20120522/7f33aa9d/attachment.html>


Mais detalhes sobre a lista de discussão R-br