[R-br] Transformar Variáveis discretas em Numeros Binários -> Pre-processamento para Redes Neurais

Luis Iván Ortiz Valencia liov2067 em gmail.com
Terça Dezembro 13 00:56:07 BRST 2011


corrigindo, mandei errado antes.

data(iris)


nom1<-sample(iris[,5])
nom2<-sample(iris[,5])
nom3<-sample(iris[,5])
nom4<-sample(iris[,5])

nom<-data.frame(nom1,nom2,nom3,nom4)
m<-NULL
for ( i in 1:4)
{
d<-length(table(nom[,i]))
n<-matrix(0,nrow(nom),d)
n<-decodeClassLabels(nom[,i])
m<-cbind(m,n)
}

Em 13 de dezembro de 2011 00:54, Luis Iván Ortiz Valencia <
liov2067 em gmail.com> escreveu:

> tal vez funcione
>
> data(iris)
>
>
> nom1<-sample(iris[,5])
> nom2<-sample(iris[,5])
> nom3<-sample(iris[,5])
> nom4<-sample(iris[,5])
> nom5<-sample(iris[,5])
> nom<-data.frame(nom1,nom2,nom3,nom4)
> m<-NULL
> for ( i in 1:4)
> {
> d<-length(table(nom[,3]))
> n<-matrix(0,nrow(nom),d)
> n<-decodeClassLabels(nom[,3])
> m<-cbind(m,n)
> }
>
> Em 13 de dezembro de 2011 00:02, Fernando Neto <fernandoneto7 em gmail.com>escreveu:
>
> library(RSNNS)
>> #load the database
>> #data(iris)
>>
>> dataBaseName = read.table("adult.data") # é uma base de dados
>> #shuffle the vector
>> vector <-
>> dataBaseName[sample(1:nrow(dataBaseName),length(1:nrow(dataBaseName))),1:ncol(dataBaseName)]
>>
>> #set what the columns are discrete variable
>> colDisVar = c(1,2,4,6,7,8,9,13)
>>
>> values <- vector[,1:(ncol(vector)-1)]
>> colDisVarOk = c()
>> colDisVarOk = cbind(colDisVarOk, colDisVar[1])
>> #subtrai as colunas pq quando eu retiro a coluna e coloco no final, o
>> índice da coluna é diminuido
>> for (i in colDisVar[2:length(colDisVar)]){
>>     colDisVarOk = cbind(colDisVarOk, i-1)
>> }
>>
>> #AQUI de fato é onde o algoritmo deve decodificar a coluna-atributo e
>> deve ser adicionado no final da matriz.
>> for (i in colDisVarOk){
>>     colAux = decodeClassLabels(vector[,i])
>>    # vector = vector [,-i]
>>    # vector = cbind(vector, colAux)
>>
>> }
>>
>> Em 12 de dezembro de 2011 22:58, Luis Iván Ortiz Valencia <
>> liov2067 em gmail.com> escreveu:
>>
>> Mande uma parte do seu arquivo. e as codificacoes desejadas.
>>>
>>> Em 12 de dezembro de 2011 23:27, Fernando Neto <fernandoneto7 em gmail.com>escreveu:
>>>
>>> Luis, mas eu preciso que a "nova coluna" substituia a coluna velha.
>>>> Então eu retiro a velha e adiciono.
>>>> Como você faria de forma menos custosa?
>>>>
>>>> Em 12 de dezembro de 2011 22:24, Luis Iván Ortiz Valencia <
>>>> liov2067 em gmail.com> escreveu:
>>>>
>>>> Retiraria o cbind do for....ele ta crescendo. a matriz
>>>>>
>>>>> Em 12 de dezembro de 2011 22:07, Fernando Neto <
>>>>> fernandoneto7 em gmail.com> escreveu:
>>>>>
>>>>> Não, FHRB, as variáveis podem ser qualquer valor discreto. Eu citei
>>>>>> apenas um exemplo. Essa funcao q falei ja faz isso, mas acho que a operacao
>>>>>> de adicionar à matriz principal é custosa. Você saberia me confirmar isso?
>>>>>> Acho que é O(n).
>>>>>>
>>>>>> Em 12 de dezembro de 2011 21:04, FHRB Toledo <
>>>>>> fernandohtoledo em gmail.com> escreveu:
>>>>>>
>>>>>> Fernando,
>>>>>>>
>>>>>>> Não se entendi, mas se seus vetores sempre so tiverem duas opções um
>>>>>>> which(vetor == 'marculino') não serviria?
>>>>>>>
>>>>>>> Nesse contexto você pode incluir um apply(), mas ou menos do tipo:
>>>>>>>
>>>>>>> apply(dados, 2, function(x) which(x == 'masculino'))
>>>>>>>
>>>>>>> Como pressuponho só ter duas opções o caso com != retornará os casos
>>>>>>> contrários 'feminino'.
>>>>>>>
>>>>>>> att,
>>>>>>> FH
>>>>>>>
>>>>>>> 2011/12/12 Fernando Neto <fernandoneto7 em gmail.com>
>>>>>>>
>>>>>>>> Boa noite, R-anos!
>>>>>>>> Por favor, estou precisando ajustar os arquivos de uma base de
>>>>>>>> dados para processamento de uma RNA.
>>>>>>>> Estou usando a função decodeClassLabels(...) mas a operacao tá
>>>>>>>> ficando muito custosa.
>>>>>>>> Por exemplo
>>>>>>>> __
>>>>>>>> Masculino Programador
>>>>>>>> Masculino Médico
>>>>>>>> Feminino Programador
>>>>>>>> __
>>>>>>>> tem que ser
>>>>>>>> __
>>>>>>>> 0 1     0 1
>>>>>>>> 1 0     1 0
>>>>>>>> __
>>>>>>>>
>>>>>>>> Só que eu trato cada variável de cada vez. E acho que a operacao de
>>>>>>>> concatenacao que eu uso:
>>>>>>>> cbind(...) tá tornando a operacao custosa (além de que a memória
>>>>>>>> passa de 2GB).
>>>>>>>>
>>>>>>>> PS.: eu faço o seguinte:
>>>>>>>>
>>>>>>>> *for (i in (VETOR COM AS COLUNAS A SEREM TRANSFORMADAS)){*
>>>>>>>> *    colAux = decodeClassLabels(vector[,i])*
>>>>>>>> *   vector = vector [,-i]*
>>>>>>>> *   vector = cbind(vector, colAux) *
>>>>>>>> *} *
>>>>>>>>
>>>>>>>> Alguém sugere algo?
>>>>>>>>
>>>>>>>> Muito grato!!!
>>>>>>>> Fernando
>>>>>>>>
>>>>>>>> --
>>>>>>>> ----------------------------------------------------------------
>>>>>>>> *Fernando Neto*
>>>>>>>> Twitter: @fernandompneto
>>>>>>>> Facebook: facebook.com/fernandompneto
>>>>>>>>
>>>>>>>> Tecnologia de Ponte
>>>>>>>> http://tecnologiadeponte.blogspot.com
>>>>>>>> ----------------------------------------------------------------
>>>>>>>> *fmpn2 @ CIn - UFPE*
>>>>>>>> http://cin.ufpe.br/~fmpn2
>>>>>>>>
>>>>>>>> - Engenharia da Computação - Turma 2009.2 - CIn, UFPE.
>>>>>>>> - Monitor de Estatistica e Probabilidade Para Engenharia da
>>>>>>>> Computacao <http://www.cin.ufpe.br/%7Eet586/>
>>>>>>>>
>>>>>>>> <http://cin.ufpe.br/%7Eif672cc>
>>>>>>>> ----------------------------------------------------------------
>>>>>>>> Confidencialidade*: *A informação contida nesta mensagem de e-mail,
>>>>>>>> incluindo quaisquer anexos, é confidencial e está reservada apenas
>>>>>>>> à pessoa ou entidade para a qual foi endereçada. Se você não é o
>>>>>>>> destinatário ou a pessoa responsável por encaminhar esta mensagem ao
>>>>>>>> destinatário, você está, por meio desta, notificado que não deverá rever,
>>>>>>>> retransmitir, imprimir, copiar, usar ou distribuir esta mensagem de e-mail
>>>>>>>> ou quaisquer anexos. Caso você tenha recebido esta mensagem por engano, por
>>>>>>>> favor, contate o remetente imediatamente e apague esta mensagem de seu
>>>>>>>> computador ou de qualquer outro banco de dados. Muito obrigado.
>>>>>>>> Confidentiality Notice: The information contained in this email
>>>>>>>> message, including any attachment, is confidential and is intended only for
>>>>>>>> the person or entity to which it is addressed. If you are neither the
>>>>>>>> intended recipient nor the employee or agent responsible for delivering
>>>>>>>> this message to the intended recipient, you are hereby notified that you
>>>>>>>> may not review, retransmit, convert to hard copy, copy, use or distribute
>>>>>>>> this email message or any attachments to it. If you have received this
>>>>>>>> email in error, please contact the sender immediately and delete this
>>>>>>>> message from any computer or other data bank. Thank you.
>>>>>>>>
>>>>>>>> --------
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> 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.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> ----------------------------------------------------------------
>>>>>> *Fernando Neto*
>>>>>> Twitter: @fernandompneto
>>>>>> Facebook: facebook.com/fernandompneto
>>>>>>
>>>>>> Tecnologia de Ponte
>>>>>> http://tecnologiadeponte.blogspot.com
>>>>>> ----------------------------------------------------------------
>>>>>> *fmpn2 @ CIn - UFPE*
>>>>>> http://cin.ufpe.br/~fmpn2
>>>>>>
>>>>>> - Engenharia da Computação - Turma 2009.2 - CIn, UFPE.
>>>>>> - Monitor de Estatistica e Probabilidade Para Engenharia da
>>>>>> Computacao <http://www.cin.ufpe.br/%7Eet586/>
>>>>>>
>>>>>> <http://cin.ufpe.br/%7Eif672cc>
>>>>>> ----------------------------------------------------------------
>>>>>> Confidencialidade*: *A informação contida nesta mensagem de e-mail,
>>>>>> incluindo quaisquer anexos, é confidencial e está reservada apenas à
>>>>>> pessoa ou entidade para a qual foi endereçada. Se você não é o destinatário
>>>>>> ou a pessoa responsável por encaminhar esta mensagem ao destinatário, você
>>>>>> está, por meio desta, notificado que não deverá rever, retransmitir,
>>>>>> imprimir, copiar, usar ou distribuir esta mensagem de e-mail ou quaisquer
>>>>>> anexos. Caso você tenha recebido esta mensagem por engano, por favor,
>>>>>> contate o remetente imediatamente e apague esta mensagem de seu computador
>>>>>> ou de qualquer outro banco de dados. Muito obrigado.
>>>>>> Confidentiality Notice: The information contained in this email
>>>>>> message, including any attachment, is confidential and is intended only for
>>>>>> the person or entity to which it is addressed. If you are neither the
>>>>>> intended recipient nor the employee or agent responsible for delivering
>>>>>> this message to the intended recipient, you are hereby notified that you
>>>>>> may not review, retransmit, convert to hard copy, copy, use or distribute
>>>>>> this email message or any attachments to it. If you have received this
>>>>>> email in error, please contact the sender immediately and delete this
>>>>>> message from any computer or other data bank. Thank you.
>>>>>>
>>>>>> --------
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> 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.
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Luis Iván Ortiz Valencia
>>>>> Doutorando Saúde Pública - Epidemiologia, IESC, UFRJ
>>>>> Estatístico Msc.
>>>>> Spatial Analyst Msc.
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> 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.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> ----------------------------------------------------------------
>>>> *Fernando Neto*
>>>> Twitter: @fernandompneto
>>>> Facebook: facebook.com/fernandompneto
>>>>
>>>> Tecnologia de Ponte
>>>> http://tecnologiadeponte.blogspot.com
>>>> ----------------------------------------------------------------
>>>> *fmpn2 @ CIn - UFPE*
>>>> http://cin.ufpe.br/~fmpn2
>>>>
>>>> - Engenharia da Computação - Turma 2009.2 - CIn, UFPE.
>>>> - Monitor de Estatistica e Probabilidade Para Engenharia da Computacao<http://www.cin.ufpe.br/%7Eet586/>
>>>>
>>>> <http://cin.ufpe.br/%7Eif672cc>
>>>> ----------------------------------------------------------------
>>>> Confidencialidade*: *A informação contida nesta mensagem de e-mail,
>>>> incluindo quaisquer anexos, é confidencial e está reservada apenas à
>>>> pessoa ou entidade para a qual foi endereçada. Se você não é o destinatário
>>>> ou a pessoa responsável por encaminhar esta mensagem ao destinatário, você
>>>> está, por meio desta, notificado que não deverá rever, retransmitir,
>>>> imprimir, copiar, usar ou distribuir esta mensagem de e-mail ou quaisquer
>>>> anexos. Caso você tenha recebido esta mensagem por engano, por favor,
>>>> contate o remetente imediatamente e apague esta mensagem de seu computador
>>>> ou de qualquer outro banco de dados. Muito obrigado.
>>>> Confidentiality Notice: The information contained in this email
>>>> message, including any attachment, is confidential and is intended only for
>>>> the person or entity to which it is addressed. If you are neither the
>>>> intended recipient nor the employee or agent responsible for delivering
>>>> this message to the intended recipient, you are hereby notified that you
>>>> may not review, retransmit, convert to hard copy, copy, use or distribute
>>>> this email message or any attachments to it. If you have received this
>>>> email in error, please contact the sender immediately and delete this
>>>> message from any computer or other data bank. Thank you.
>>>>
>>>> --------
>>>>
>>>>
>>>> _______________________________________________
>>>> 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.
>>>>
>>>
>>>
>>>
>>> --
>>> Luis Iván Ortiz Valencia
>>> Doutorando Saúde Pública - Epidemiologia, IESC, UFRJ
>>> Estatístico Msc.
>>> Spatial Analyst Msc.
>>>
>>>
>>>
>>> _______________________________________________
>>> 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.
>>>
>>
>>
>>
>> --
>> ----------------------------------------------------------------
>> *Fernando Neto*
>> Twitter: @fernandompneto
>> Facebook: facebook.com/fernandompneto
>>
>> Tecnologia de Ponte
>> http://tecnologiadeponte.blogspot.com
>> ----------------------------------------------------------------
>> *fmpn2 @ CIn - UFPE*
>> http://cin.ufpe.br/~fmpn2
>>
>> - Engenharia da Computação - Turma 2009.2 - CIn, UFPE.
>> - Monitor de Estatistica e Probabilidade Para Engenharia da Computacao<http://www.cin.ufpe.br/%7Eet586/>
>>
>> <http://cin.ufpe.br/%7Eif672cc>
>> ----------------------------------------------------------------
>> Confidencialidade*: *A informação contida nesta mensagem de e-mail,
>> incluindo quaisquer anexos, é confidencial e está reservada apenas à
>> pessoa ou entidade para a qual foi endereçada. Se você não é o destinatário
>> ou a pessoa responsável por encaminhar esta mensagem ao destinatário, você
>> está, por meio desta, notificado que não deverá rever, retransmitir,
>> imprimir, copiar, usar ou distribuir esta mensagem de e-mail ou quaisquer
>> anexos. Caso você tenha recebido esta mensagem por engano, por favor,
>> contate o remetente imediatamente e apague esta mensagem de seu computador
>> ou de qualquer outro banco de dados. Muito obrigado.
>> Confidentiality Notice: The information contained in this email
>> message, including any attachment, is confidential and is intended only for
>> the person or entity to which it is addressed. If you are neither the
>> intended recipient nor the employee or agent responsible for delivering
>> this message to the intended recipient, you are hereby notified that you
>> may not review, retransmit, convert to hard copy, copy, use or distribute
>> this email message or any attachments to it. If you have received this
>> email in error, please contact the sender immediately and delete this
>> message from any computer or other data bank. Thank you.
>>
>> --------
>>
>>
>> _______________________________________________
>> 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.
>>
>
>
>
> --
> Luis Iván Ortiz Valencia
> Doutorando Saúde Pública - Epidemiologia, IESC, UFRJ
> Estatístico Msc.
> Spatial Analyst Msc.
>
>
>


-- 
Luis Iván Ortiz Valencia
Doutorando Saúde Pública - Epidemiologia, IESC, UFRJ
Estatístico Msc.
Spatial Analyst Msc.
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20111213/42390d46/attachment-0001.html>


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