
Amigos, consigo usar a função merge para realizar um left join com duas chaves? com uma uso normalmente. Abs. -- Vinicius Brito Rocha. Estatístico e Atuário, Mestre em Pesquisa Operacional www.aplicademic.blogspot.com http://twitter.com/viniciusbritor "Não se preocupe muito com as suas dificuldades em Matemática, posso assegurar-lhe que as minhas são ainda maiores." - Albert Einstein.

Sim. Se os nomes das chaves forem diferentes, passe-os como argumento. -- Successful people ask better questions, and as a result, they get better answers. (Tony Robbins)

Benilton, desculpe mas estou tentando aqui sem sucesso. poderia me dar um help com um exemplo? abs. Em 26 de outubro de 2011 17:55, Benilton Carvalho < beniltoncarvalho@gmail.com> escreveu:
Sim. Se os nomes das chaves forem diferentes, passe-os como argumento.
-- Successful people ask better questions, and as a result, they get better answers. (Tony Robbins)
_______________________________________________ R-br mailing list R-br@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.
-- Vinicius Brito Rocha. Estatístico e Atuário, Mestre em Pesquisa Operacional www.aplicademic.blogspot.com http://twitter.com/viniciusbritor "Não se preocupe muito com as suas dificuldades em Matemática, posso assegurar-lhe que as minhas são ainda maiores." - Albert Einstein.

De um exemplo reproduzível... -- Successful people ask better questions, and as a result, they get better answers. (Tony Robbins)

Um CMR set.seed(1) ref <- data.frame(V1 = LETTERS[1:26],V2 = sample(1:26,26,replace=F)) df1 <- ref set.seed(1) df1$V3 <- rnorm(26,250,50) set.seed(1) df2 <- ref[sample(1:26,26,replace=F),] df2$V4 <- trunc(rnorm(26,1000,100)) df1 df2 df3 <- merge(df1,df2,by=c('V1','V2'),all=T) #todas as observações dos dois df4 <- merge(df1,df2,by=c('V1','V2'),all.x=T) #todos do primeiro DF df5 <- merge(df1,df2,by=c('V1','V2'),all.y=T) #todos do segundo DF df6 <- merge(df1,df2,by=c('V1','V2')) #apenas as observações comuns # caso o nome das variáveis seja diferente df7 <- merge(df1,df2,by.x=c('V1','V2'),by.y=c('V1','V4'),all=T) #todas as observações dos dois df8 <- merge(df1,df2,by.x=c('V1','V2'),by.y=c('V1','V4'),all.x=T) #todos do primeiro DF df9 <- merge(df1,df2,by.x=c('V1','V2'),by.y=c('V1','V4'),all.y=T) #todos do segundo DF df0 <- merge(df1,df2,by.x=c('V1','V2'),by.y=c('V1','V4')) #apenas as observações comuns Atenciosamente, Leandro Lins Marino Centro de Avaliação Fundação CESGRANRIO Rua Santa Alexandrina, 1011 - 2º andar Rio de Janeiro, RJ - CEP: 20261-903 R (21) 2103-9600 R.:236 ( leandro@cesgranrio.org.br Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO AMBIENTE Esta mensagem, incluindo seus anexos, pode conter informacoes privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou arquivamento sao proibidos. Portanto, se você recebeu esta mensagem por engano, por favor, nos informe respondendo imediatamente a este e-mail e em seguida apague-a. -----Mensagem original----- De: r-br-bounces@listas.c3sl.ufpr.br [mailto:r-br-bounces@listas.c3sl.ufpr.br] Em nome de Jakson Alves de Aquino Enviada em: quarta-feira, 26 de outubro de 2011 19:32 Para: r-br@listas.c3sl.ufpr.br Assunto: Re: [R-br] chave dupla no merge 2011/10/26 Vinicius Brito Rocha <viniciusbritor@gmail.com>:
consigo usar a função merge para realizar um left join com duas chaves? com uma uso normalmente.
Uma opção é concatenar as duas: chave <- paste(as.character(chave1), as.character(chave2)) -- Jakson _______________________________________________ R-br mailing list R-br@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.
participantes (4)
-
Benilton Carvalho
-
Jakson Alves de Aquino
-
Leandro Marino
-
Vinicius Brito Rocha