[R-br] RES: chave dupla no merge
Leandro Marino
leandro em cesgranrio.org.br
Quinta Outubro 27 09:18:07 BRST 2011
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 em 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 em listas.c3sl.ufpr.br [mailto:r-br-bounces em 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 em listas.c3sl.ufpr.br
Assunto: Re: [R-br] chave dupla no merge
2011/10/26 Vinicius Brito Rocha <viniciusbritor em 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 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.
Mais detalhes sobre a lista de discussão R-br