<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span> d1 <- data.frame(snp1=c("A","A","A","A","T"), snp2=c("A","G","G","A","G"), <br></span></div><div><span> snp3=c("C","T","C","C","T"), snp4=c("T","G","G","T","T"))<br></span></div><div> d2 <- data.frame(snp=paste("snp",1:4,sep=""), anc=c("A","G","C","T"))<br><br> sapply(1:ncol(d1), function(i) 1-(as.character(d1[,i])==as.character(d2[i,2])))<br><br></div><div>Elias T. Krainski<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; margin-top: 5px; padding-left: 5px;"> <div style="font-family: times new roman,new york,times,serif; font-size: 12pt;"> <div style="font-family: times new roman,new
york,times,serif; font-size: 12pt;"> <font face="Arial" size="2"> <hr size="1"> <b><span style="font-weight: bold;">De:</span></b> João José de Simoni Gouveia <joao.gouveia@univasf.edu.br><br> <b><span style="font-weight: bold;">Para:</span></b> r-br@listas.c3sl.ufpr.br <br> <b><span style="font-weight: bold;">Enviadas:</span></b> Sábado, 10 de Dezembro de 2011 22:21<br> <b><span style="font-weight: bold;">Assunto:</span></b> [R-br] Modificar valores de dataframe com base em outro dataframe<br> </font> <br>Prezados,<br><br>Possuo dois dataframes (nomeados aqui de 1 e 2). Preciso modificar os valores do dataframe1 com base no dataframe2.<br>Mais precisamente:<br>Se os valores da coluna snp1 (dataframe1) forem iguais ao valor da linha snp1 (dataframe2), preciso converter estes valores para 0 (zero), caso contrário o valor deve ser convertido para 1 (um).<br>Alguém tem alguma dica?<br>Att<br>JJ<br>Abaixo uma ilustração do que eu
tenho<br>DataFrame 1 --><br> snp1 snp2 snp3 snp4<br>1 A A C T<br>2 A G T G<br>3 A G C G<br>4 A A C T<br>5 T G T T<br><br>DataFrame 2 --><br> snp anc<br>1 snp1 A<br>2 snp2 G<br>3 snp3 C<br>4 snp4 T<br><br>E o que eu preciso ter:<br>Dataframe final --><br> snp1 snp2 snp3 snp4<br>1 0 1 0 0<br>2 0 0 1 1<br>3 0 0 0 1<br>4 0 1 0
0<br>5 1 0 1 0<br><br>-- <br>============================================<br> João José de Simoni Gouveia <br> Médico Veterinário, Msc.<br> Doutorando em Zootecnia - PDIZ (UFC/UFPB/UFRPE) <br> Professor Assistente I - Colegiado Acadêmico de Zootecnia <br> Universidade Federal do Vale do São Francisco (UNIVASF) <br>----------------------------------------------------------------------------------------<br> Endereço: UNIVASF (Campus Ciências Agrárias)
<br> Rodovia BR 407, Km 12, Lote 543 <br> Projeto de Irrigação Senador Nilo Coelho, s/nº-C1 <br> Petrolina, PE - CEP 56.300-000 <br> Telefone: (87)3986-3800/3804-3801<br> Skype: joao_jose_de_simoni_gouveia<br> E-mail alternativo: <a ymailto="mailto:jjsgouveia@gmail.com" href="mailto:jjsgouveia@gmail.com">jjsgouveia@gmail.com</a>
<br>============================================<br>_______________________________________________<br>R-br mailing list<br><a ymailto="mailto:R-br@listas.c3sl.ufpr.br" href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br><a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br><br><br> </div> </div> </blockquote></div> </div></body></html>