Olá Benilton, certa vez você postou no fórum que trabalhava com 7M+ linhas e centenas de colunas diariamente e sem problemas. Então, gostaria de saber como faço para simular um conjunto de dados com 53130 colunas e 1200 linhas sem problemas. Segue a rotina abaixo com a especificação de meu PC. Sei que existe um pacote chamado <em>"bigmemory</em>" mas não sei utilizar. Então, se for possÃvel, gostaria que acrescentasse nessa minha rotina abaixo o uso desse pacote para resolver o problema que está aparecendo que é: "<strong><em>Erro: não é possÃvel alocar vetor de tamanho 2.4 Gb</em></strong>". <br /><br /><strong># Matriz simulada:</strong><br /><br /> X <- matrix(rpois(30000,5),1200,25)<br /> colnames(X) <- paste("C",1:25,sep="")<br /><br /><strong># Combinando as 25 colunas tomadas 5 à 5: </strong><br /><br /> combina <- combn(ncol(X),5)<br /> MultMat <- array(X[,combina],dim=c(nrow(X),dim(combina)[1],dim(combina)[2]))<br /> dim(MultMat)<br /><br
/><strong># Verificando o rótulo (sequência) de uma determinada combinação:</strong><br /> <br /> comb <- 53130 # nº de comb. possiveis de 25 colunas tomadas 5 à 5.<br /> nomes_das_colunas = as.vector(colnames(X))<br /> colunas_combinadas = combn(nomes_das_colunas,5)<br /> colunas_combinadas[,comb]<br /> rotcomb <- paste("C",1:comb,sep="")<br /> <br /><strong># Conferindo todas as linhas de uma determinada combinação:</strong><br /><br /> combinação <- MultMat[,,1]<br /> colnames(combinação) <- colunas_combinadas[,1]<br /> combinação<br /><br /><strong># Armazenando numa lista as somas de cada linha de cada combinação:</strong><br /><br /> armsoma <- rep(list(rep(0,1200)),comb)<br /><br /> for (i in 1:comb)<br /> {<br /> soma_linhas <- colSums(aperm(MultMat,c(2,1,3)))<br /> soma_linhas <- cbind(soma_linhas[,i])<br /> colnames(soma_linhas) <- rotcomb[i]<br /> armsoma[[i]] <- soma_linhas<br /> }<br /><br /> saida <- matrix(unlist
(armsoma),1200,comb)<br /> write.table(saida,file="saidaCOMB.txt",append = FALSE, quote = TRUE, sep = " ")<br /><br /><strong>Configurações do meu laptop:</strong><br /> <br /> Marca: Compaq<br /> Processador: Intel Pentium Dual Core<br /> HD: 320 GB<br /> Mémoria: 3GB RAM<br /> Sistema: Windows7<br /> Bits: 32<br />R version 2.13<br /> <strong><br /></strong><em>desde já agradeço!<br /><br />Att.<br />André</em><strong><br /></strong><br />
<hr style="border-top: 1px solid #ccc;" />
Em 31/07/2012 17:09, <strong>Benilton Carvalho < beniltoncarvalho@gmail.com ></strong> escreveu:<br />e se quiser economizar uns decimos de segundo:<br /><br />colSums(aperm(MultMat, c(2, 1, 3)))<br /><br />2012/7/31 Fabio Mathias Corrêa :<br />> Isso mesmo!<br />><br />> Veja o help!<br />><br />> ?array<br />> ?apply<br />><br />> Fábio Mathias Corrêa<br />><br />> Universidade Estadual de Santa Cruz<br />> Departamento de Ciências Exatas e da Terra - DCET<br />><br />><br />> Campus Soane Nazaré de Andrade, km 16 Rodovia Ilhéus-Itabuna<br />> CEP 45662-900. Ilhéus-Bahia<br />><br />><br />> Tel.: 73-3680-5076<br />> ________________________________<br />> De: andrebvs <br />><br />> Para: r-br@listas.c3sl.ufpr.br<br />> Enviadas: Terça-feira, 31 de Julho de 2012 13:22<br />> Assunto: Re: [R-br] Combinar colunas de um banco de dados...<br />><br />> obg Luciano!<br />><
br />><br />> ________________________________<br />> Em 30/07/2012 09:24, Luciano F. Sgarbi < luciano.f.sgarbi@gmail.com ><br />> escreveu:<br />> #Seria isso:<br />> data<-read.table('clipboard',h=T)##esse é aquela matriz de 12 colunas<br />> combinations<-combn(colnames(data),6)<br />> loop<-ncol(combinations)<br />> resu<-matrix(0,10,loop)<br />> colnames(resu)<-paste(rep("comb",loop),"_",1:loop,sep="")<br />> rownames(resu)<-paste(rep("row",10),"_",1:10,sep="")<br />> for(i in 1:loop){<br />> resu[,i]<-rowSums(data[,combinations[,i]])<br />> }<br />> resu<br />><br />><br />> 2012/7/29 andrebvs <br />><br />> Obg colegas!<br />><br />> Agora, tem como somar as linhas de cada combinação? De forma que eu tenha<br />> 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 />> thanks!<br />><br />><br />> ________________________________<br />> Em 29/07/2012 20:01, Luciano F. Sgarbi < luciano.f.sgarbi@gmail.com ><br />> escreveu:<br />> É isso mesmo!<br />><br />> 2012/7/29 Pedro Rafael <br />><br />> Se quiser uma outra combinação colocar<br />> dados[as.vector(colunas_combinadas[,2])]<br />> [  ],<br />> Pedro Rafael Diniz Marinho.<br />><br />><br />> Em 29 de julho de 2012 19:55, Pedro Rafael<br />> escreveu:<br />>> dados = read.table("dados_teste.txt",header=TRUE)<br />>> nomes_das_colunas = as.vector(colnames(dados))<br />>> colun
as_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 />>> 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,<br />>>> por<br />>>> exemplo a seguinte:<br />>>><br />>>> Q1  Q4  Q7 Q8 Q9  Q12<br />>>> 1   1   1   0  1  0 Â
 1<br />>>> 2   1   0   0   1  1   1<br />><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<br />>>> 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<br />>>> combinações,<br />>>> gostaria também, que tivesse um vetor q ue me retorne a soma de cada<br />>>> 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<br />>>>  Q11  Q2 Q9<br />>>> Q7      soma das linhas<br />>>> 1   1   1   0  1  0   1       4<br />>>> 0                        Â<br />>>> 2<br />>>> 2   1   0   0  1  1   1       4<br />>>> 1                        Â<br />>>
;> 3<br />>>> 3   0   0   3  0  0   0       3     Â<br />>>>           � �<br />>>> 3                        Â<br />>>> 5<br />>>> 4   1   2   0  0  0   1       4<br />>>> 3                        Â<br />>>> 1<br />>>> 5   0   0   0  1  1   2       4<br />> &g t;> .                       Â<br />>   .<br />><br />>>> 6   1   1   3  1  2   0       8<br />>>> .                    Â
   Â<br />>>>  .<br />>>> 7   1   1   0  0  0   1       3     Â<br />>>>           �<br />>>> �   .                     Â<br />>>>     .<br />>>> 8   0   1   2  0  2   0       5<br />>>> etc                       Â<br />>>> 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 />>>> ________________________________<br />>>> Em 29/07/2012 19:04, Luciano F. Sgarbi
< [hidde n email] > escreveu:<br />><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 />>>>><br />>>>> Olá pessoal, gostaria de saber como faço para combinar essas 12<br />>>>> 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<br />>>>> 6 Â Â 1 Â 1 Â 0 Â 1 Â 1 Â 0 Â 3 Â 1 Â Â 2 Â Â 1 Â Â 1 Â Â 0<br />><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 Â Â<br />>>>> 2<br />>>>><br />>>>> desde já agradeço!<br />>>>><br />>>>> Att.<br />>>>> André<br />>>>><br />>>>><br />>>>> _______________________________________________<br />>>>&
gt; R-br mailing list<br />>>>> R-br@...<br />>>>><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.b" target="_blank">http://www.leg.ufpr.b</a> r/r-br-guia) e forneça<br />><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. (62)8174-2262 Lab. (62)3521-1732<br />>>><br />>>><br />>>><br />>>><br />>>><br />>>><br />>>><br />>>> _______________________________________________<br />>>> R-br mailing list<
br />>>> [hidden email]<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<br />>>> código<br />><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 />>>><br />>>> <a 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 />> R-br@listas.c3sl.ufpr.br<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" target="_blank">http://www.leg.ufpr</a> .br/r-br-guia) e forneça<br />> código mÃÂnimo reproduzÃÂvel.<br />><br />><br />><br />> --<br />> Luciano F. Sgarbi<br />> Mestrando em Ecologia e Evolução - UFG<br />> Laboratório de Ecologia de Insetos<br />> Cel. (62)8174-2262 Lab. (62)3521-1732<br />> Â<br />> Â<br />><br />><br />><br />> _______________________________________________<br />> R-br mailing list<br />> R-br@listas.c3sl.ufpr.br<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 />&
gt; 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<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. (62)8174-2262  Lab. (62)3521-1732<br />> Â<br />> Â<br />><br />><br />> _______________________________________________<br />> R-br mailing list<br />> R-br@listas.c3sl.ufpr.br<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<br />> mÃnimo reproduzÃvel.<br />><br />><br />> ______________________________
_________________<br />> R-br mailing list<br />> R-br@listas.c3sl.ufpr.br<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<br />> mÃnimo reproduzÃvel.<br />_______________________________________________<br />R-br mailing list<br />R-br@listas.c3sl.ufpr.br<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 />