Parabéns Fábio, show de bola!<br /><br />Agora, uma pergunta ingênua: essas duas vírgulas na notação da saída da <strong>"MultMat" </strong>, por exemplo: , , 923 e , , 924. Significa que o resultado está na terceira dimensão? Tendo em vista que à primeira vírgula corresponderia a linhas e a segunda vírgula à colunas?<br /><br />obg!<br /><br />
<hr style="border-top: 1px solid #ccc;" />
Em 31/07/2012 14:41, <strong>Fabio Mathias Corrêa < fabio.ufla@yahoo.com.br ></strong> escreveu:<br />
<div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt">
<div><span>
<div>Segue abaixo um exemplo de como fazer a combinação de colunas sem utilizar o laço for. Dependendo da operação o for pode demandar muito tempo!</div>
<div></div>
<div></div>
<div>X <- matrix(1:120,10,12)</div>
<div>X</div>
<div>combina <- combn(ncol(X),6)</div>
<div>dim(combina)</div>
<div></div>
<div>MultMat <- array(X[,combina],dim=c(nrow(X),dim(combina)[1],dim(combina)[2]))</div>
<div>dim(MultMat)</div>
<div>### Conferindo</div>
<div>MultMat[,,1:2]</div>
<div>MultMat[,,3]</div>
<div>MultMat[,,924]</div>
<div></div>
<div>### Somando as linhas de cada combinação</div>
<div></div>
<div>soma_linhas <- apply(MultMat,3,rowSums)</div>
<div>dim(soma_linhas)</div>
<div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; "></div>
<div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; ">Valeu!!!</div>
</span></div>
<div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; "></div>
<div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; ">Fábio Mathias Corrêa<br /><br /></div>
<div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; ">Universidade Estadual de Santa Cruz<br />Departamento de Ciências Exatas e da Terra - DCET</div>
<br /><br />
<div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; ">Campus Soane Nazaré de Andrade, km 16 Rodovia Ilhéus-Itabuna<br />CEP 45662-900. Ilhéus-Bahia</div>
<div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; "><br /><br /></div>
<div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; ">Tel.: 73-3680-5076<br />
<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; ">
<div dir="ltr"><span style="font-family: Arial; font-size: x-small;">
<hr size="1" />
<strong><span style="font-weight:bold;">De:</span></strong> andrebvs <br /> <strong><span style="font-weight: bold;">Para:</span></strong> r-br@listas.c3sl.ufpr.br <br /> <strong><span style="font-weight: bold;">Enviadas:</span></strong> Terça-feira, 31 de Julho de 2012 13:22<br /> <strong><span style="font-weight: bold;">Assunto:</span></strong> Re: [R-br] Combinar colunas de um banco de dados...<br /> </span></div>
<br />
<div id="yiv313614926">obg Luciano!<br /> <br /><br />
<hr style="border-top:1px solid #ccc;" />
Em 30/07/2012 09:24, <strong>Luciano F. Sgarbi < luciano.f.sgarbi@gmail.com ></strong> escreveu:<br />#Seria isso:
<div>
<div>data<-read.table('clipboard',h=T)##esse é aquela matriz de 12 colunas</div>
<div>combinations<-combn(colnames(data),6)</div>
<div>loop<-ncol(combinations)</div>
<div>resu<-matrix(0,10,loop)</div>
<div>colnames(resu)<-paste(rep("comb",loop),"_",1:loop,sep="")</div>
<div>rownames(resu)<-paste(rep("row",10),"_",1:10,sep="")</div>
<div>for(i in 1:loop){</div>
<div>resu[,i]<-rowSums(data[,combinations[,i]])</div>
<div>}</div>
<div>resu</div>
</div>
<div><br /><br />
<div class="yiv313614926gmail_quote">2012/7/29 andrebvs <span dir="ltr"><<a rel="nofollow" href="http://mce_host/compose?to=andrebvs@bol.com.br" target="_blank">andrebvs@bol.com.br</a>></span><br />
<blockquote class="yiv313614926gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Obg colegas!<br /><br />Agora, tem como somar as linhas de cada combinação? De forma que eu tenha um resultado geral do tipo:<br /> <br /> C1 C2 C3 ... C924 <br />[1,]   5  5<br />[1,]   6  5<br />[1,]   4  6<br />[1,]   6  5<br />[1,]   6  4<br />[1,]   4  7<br />[1,]   4  7<br />[1,]   3  8<br />[1,]   9  8<br />[1,]   2  6<br />.<br />.<br />.<br />[1265,]<br /> <br /><br /><em>thanks!</em><br /> <br /><br />
<hr style="border-top:1px solid #ccc;" />
Em 29/07/2012 20:01, <strong>Luciano F. Sgarbi < <a rel="nofollow" href="http://mce_host/compose?to=luciano.f.sgarbi@gmail.com" target="_blank">luciano.f.sgarbi@gmail.com</a> ></strong> escreveu:<br />É isso mesmo!<br /><br />
<div class="yiv313614926gmail_quote">2012/7/29 Pedro Rafael <span dir="ltr"><<a rel="nofollow" href="http://mce_host/compose?to=pedro.rafael.marinho@gmail.com" target="_blank">pedro.rafael.marinho@gmail.com</a>></span><br />
<blockquote class="yiv313614926gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div>
<div class="yiv313614926h5">Se quiser uma outra combinação colocar dados[as.vector(colunas_combinadas[,2])]<br />
<div>[ Â ],<br /> Pedro Rafael Diniz Marinho.<br /> <br /> <br /></div>
Em 29 de julho de 2012 19:55, Pedro Rafael<br /> <<a rel="nofollow" href="http://mce_host/compose?to=pedro.rafael.marinho@gmail.com" target="_blank">pedro.rafael.marinho@gmail.com</a>> escreveu:</div>
</div>
<div>
<div>
<div>
<div class="yiv313614926h5">> dados = read.table("dados_teste.txt",header=TRUE)<br /> > nomes_das_colunas = as.vector(colnames(dados))<br /> > colunas_combinadas = combn(nomes_das_colunas,6)<br /> > dados[as.vector(colunas_combinadas[,1])]<br /> > [  ],<br /> > Pedro Rafael Diniz Marinho.<br /> ><br /> ><br /> > Em 29 de julho de 2012 19:47, andrebvs [via R-br]<br /> > <<a rel="nofollow" href="http://../undefined/compose?to=ml-node" target="_blank">ml-node+s2285057n4655711h18@n4.nabble.com</a>> escreveu:<br /> >> Olá Luciano!<br /> >><br /> >> A dúvida é a seguinte:<br /> >> 1º) Tenho o seguinte banco de dados abaixo:<br /> >><br /> >><br /> >> Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Q11 Q12<br /> >> 1   1  0  3  1  0  0  0  1  0   1   0   1<br /> >> 2   1  3  0  0  1  1  0  1  1 Â
 0   2   1<br /> >> 3   0  2  1  0  0  1  3  0  0   1   0   0<br /> >> 4   1  0  0  2  2  1  0  0  0   0   2   1<br /> >> 5   0  2  1  0  1  2  0  1  1   1   0   2<br /> >> 6   1  1  0  1  1  0  3  1  2   1   1   0<br /> >> 7   1  1  0  1  1  0  0  0  0   1   1   1<br /> >> 8   0  1  0  1  0  1  2  0  2   0   3   0<br /> >> 9   1  2  3  1  2  0  0  0  0   2   0   1<br /> >> 10   0  1  0  1  0  0  1  0  1   1   0   2<br /> >><br
/> >> 2º) Quero combinar todas as 12 colunas tomadas 6 à 6, fazendo as contas<br /> >> terei 924 combinações possivéis, e uma combinação possÃvel seria, por<br /> >> exemplo a seguinte:<br /> >><br /> >> Q1  Q4  Q7 Q8 Q9  Q12<br /> >> 1   1   1   0  1  0   1</div>
</div>
>> 2   1   0   0 Â  1  1   1
<div>
<div class="yiv313614926h5"><br /> >> 3   0   0   3  0  0   0<br /> >> 4   1   2   0  0  0   1<br /> >> 5   0   0   0  1  1   2<br /> >> 6   1   1   3  1  2   0<br /> >> 7   1   1   0  0  0   1<br /> >> 8   0   1   2  0  2   0<br /> >> 9   1   1   0  0  0   1<br /> >> 10   0  1   1  0  1   2<br /> >><br /> >> Repare que, das 12 colunas iniciais, tenho essa última com 6 colunas, a qual<br /> >> é uma possÃvel combinação das 924. Então, como extrair todas as 924<br /> >> combinações da matriz inicial?<br /> >><br /> >> 3º) Após isso, ou seja, após ter encontrado todas as 924
combinações,<br /> >> gostaria também, que tivesse um vetor q ue me retorne a soma de cada linha<br /> >> de cada combinação. Por exemplo:<br /> >><br /> >> combin ação1<br /> >> combinação924<br /> >> Q1  Q4  Q7 Q8 Q9  Q12   soma das linhas      . . . Q6  Q1  Q11  Q2 Q9<br /> >> Q7      soma das linhas<br /> >> 1   1   1   0  1  0   1       4<br /> >> 0                         2<br /> >> 2   1   0   0  1  1   1       4<br /> >> 1                         3<br /> >> 3   0   0   3 Â
0  0   0       3                � �<br /> >> 3                         5<br /> >> 4   1   2   0  0  0   1       4<br /> >> 3                         1<br /> >> 5   0   0   0  1  1   2       4</div>
</div>
&g t;> . Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â .
<div class="yiv313614926im"><br /> >> 6   1   1   3  1  2   0       8<br /> >> .                          .<br /> >> 7   1   1   0  0  0   1       3                �<br /> >> �   .                          .<br /> >> 8   0   1   2  0  2   0       5<br /> >> etc                        etc<br /> >> 9   1   1   0  0  0   1       3<br /> >
> 10   0  1   1  0  1   2       5<br /> >><br /> >> desde já agradeço!<br /> >><br /> >><br /> >> ________________________________</div>
>> Em 29/07/2012 19:04, Luciano F. Sgarbi < [hidde n email] > escreveu:
<div class="yiv313614926im"><br /> >> Boa tarde.<br /> >> Tentei, mas não entendi sua pergunta.<br /> >> Você pode ser um pouco mais especifico?<br /> >> Abraços<br /> >><br /> >> 2012/7/29 andrebvs <br /> >>></div>
<div class="yiv313614926im">>>> Olá pessoal, gostaria de saber como faço para combinar essas 12 colunas<br /> >>> (Q1 até Q12) tomados 6 à 6 colunas:<br /> >>><br /> >>> Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Q11 Q12<br /> >>> 1   1  0  3  1  0  0  0  1  0   1   0   1<br /> >>> 2   1  3  0  0  1  1  0  1  1   0   2   1<br /> >>> 3   0  2  1  0  0  1  3  0  0   1   0   0<br /> >>> 4   1  0  0  2  2  1  0  0  0   0   2   1<br /> >>> 5   0  2  1  0  1  2  0  1  1   1   0   2</div>
>>> 6   1  1  0  1  1  0  3  1 Â  2   1   1   0
<div class="yiv313614926im"><br /> >>> 7   1  1  0  1  1  0  0  0  0   1   1   1<br /> >>> 8   0  1  0  1  0  1  2  0  2   0   3   0<br /> >>> 9   1  2  3  1  2  0  0  0  0   2   0   1<br /> >>> 10   0  1 � � 0  1  0  0  1  0  1   1   0   2<br /> >>><br /> >>> desde já agradeço!<br /> >>><br /> >>> Att.<br /> >>> André<br /> >>><br /> >>><br /> >>> _______________________________________________<br /> >>> R-br mailing list<br /> >>> R-br@...<br /> >>><br /> >>> <a rel="nofollow" href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/c
gi-bin/mailman/listinfo/r-br</a></div>
>>> Leia o guia de postagem (<a rel="nofollow" href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.b r/r-br-guia</a>) e forneça
<div class="yiv313614926im"><br /> >>> código mÃnimo reproduzÃvel.<br /> >><br /> >><br /> >><br /> >> --<br /> >> Luciano F. Sgarbi<br /> >> Mestrando em Ecologia e Evolução - UFG<br /> >><br /> >> Laboratório de Ecologia de Insetos<br /> >> Cel. <a rel="nofollow" target="_blank">(62)8174-2262</a> Lab. <a rel="nofollow" target="_blank">(62)3521-1732</a><br /> >><br /> >><br /> >><br /> >><br /> >><br /> >><br /> >><br /> >> _______________________________________________<br /> >> R-br mailing list<br /> >> [hidden email]<br /> >> <a rel="nofollow" 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></div>
>> Leia o guia de postagem (<a rel="nofollow" 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
<div class="yiv313614926im"><br /> >> mÃnimo reproduzÃvel.<br /> >><br /> >> ________________________________<br /> >> If you reply to this email, your message will be added to the discussion<br /> >> below:<br /> >> <a rel="nofollow" href="http://r-br.2285057.n4.nabble.com/R-br-Combinar-colunas-de-um-banco-de-dados-tp4655709p4655711.html" target="_blank">http://r-br.2285057.n4.nabble.com/R-br-Combinar-colunas-de-um-banco-de-dados-tp4655709p4655711.html</a><br /> >> To unsubscribe from R-br, click here.<br /> >> NAML<br /> _______________________________________________<br /> R-br mailing list<br /> <a rel="nofollow" href="http://mce_host/compose?to=R-br@listas.c3sl.ufpr.br" target="_blank">R-br@listas.c3sl.ufpr.br</a><br /> <a rel="nofollow" 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></div>
Leia o guia de postagem (<a rel="nofollow" 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.</div>
</div>
</blockquote>
</div>
<div class="yiv313614926HOEnZb">
<div class="yiv313614926h5"><br /><br /> -- <br /><span style="color: #333333; font-family: sans-serif; ">Luciano F. Sgarbi</span><br /><span style="font-family: sans-serif; color: #333333; ">Mestrando em Ecologia e Evolução - UFG</span><br /> <span style="color: #333333; font-family: sans-serif; ">Laboratório de Ecologia de Insetos</span><br />
<div><span style="color: #333333; font-family: sans-serif; ">Cel. <a rel="nofollow" target="_blank">(62)8174-2262</a> Lab. <a rel="nofollow" target="_blank">(62)3521-1732</a></span>
<div>
<div>Â</div>
<div>Â</div>
</div>
</div>
<br /> <br /></div>
</div>
<br />_______________________________________________<br /> R-br mailing list<br /> <a rel="nofollow" href="http://mce_host/compose?to=R-br@listas.c3sl.ufpr.br" target="_blank">R-br@listas.c3sl.ufpr.br</a><br /> <a rel="nofollow" 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 rel="nofollow" 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 /></blockquote>
</div>
<br /><br /> -- <br /> <span style="color: #333333; font-family: sans-serif; ">Luciano F. Sgarbi</span><br /><span style="font-family: sans-serif; color: #333333; ">Mestrando em Ecologia e Evolução - UFG</span><br /> <span style="color: #333333; font-family: sans-serif; ">Laboratório de Ecologia de Insetos</span><br />
<div><span style="color: #333333; font-family: sans-serif; ">Cel. (62)8174-2262 Â Lab. (62)3521-1732</span>
<div>
<div>Â</div>
<div>Â</div>
</div>
</div>
</div>
</div>
<br />_______________________________________________<br />R-br mailing list<br /><a href="http://mce_host/compose?to=R-br@listas.c3sl.ufpr.br" target="_blank">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 /></div>
</div>
</div>
</div>
<br />