Apenas aditando a elegante solução proposta pelo Alan, Este comando:
> grep(",",colnames(df), invert=T) permitiria identificar todas as colunas com nomes "simples" no jargão do OP. Então, um primeiro data.frame poderia ser construído : df2 <- df[grep(",",colnames(df), invert=T)] Aí um laço for poderia explorar a ideia do Alan, trocando o argumento do grep dele pelos nomes no novo dataframe. A minha proposta é deliberadamente sugestiva, porque mesmo após as várias explicações, ainda não entendi se as somas (como Alan fez) seriam feitas a cada nova vinda de dados (praticamente reconstruindo o data.frame) ou se algum mecanismo de acumulação teria que ser contemplado, com maior complexidade para a automação desse trabalho. HTH -- Cesar Rabak On Mon, Apr 1, 2019 at 12:29 AM Alan Rodrigo Panosso por (R-br) < r-br@listas.c3sl.ufpr.br> wrote: > Prezado Paulo, > > Veja se ajuda, continuei a partir de seu exemplo. > utilizei a função "grep()" > > names(df) > A2<-apply(df[grep("[A]",names(df))],1,sum) > B2<-apply(df[grep("[B]",names(df))],1,sum) > C2<-apply(df[grep("[C]",names(df))],1,sum) > df3<-data.frame(A2,B2,C2) > df2 == df3 > > Att > Alan > > > > > Em dom, 31 de mar de 2019 às 15:21, Paulo Eduardo de Mesquita por (R-br) < > r-br@listas.c3sl.ufpr.br> escreveu: > >> Prezado(a)s Colegas, >> >> Peço a vossa ajuda para encontrar solução para o seguinte problema: >> >> Eu tenho uma estrutura de dados do tipo tabela dinâmica cujos nomes de >> colunas podem ser "simples" ou "combinações separadas por vírgulas" (ver >> código anexo). >> >> As colunas com nomes combinados são construídas através da "concatenação" >> dos nomes de colunas simples. >> >> As colunas com nomes combinados assumem formas imprevisíveis e ocorrem >> aleatoriamente conforme a base de dados que lhe dá origem vai crescendo. >> >> Eu preciso redistribuir as contagens contidas nas colunas com nomes >> combinados para colunas de nomes simples, de modo que se, em uma linha >> qualquer da minha tabela de origem, houver uma coluna AB com valor 3, na >> minha tabela ajustada, o valor 3 será somado uma vez ao que já havia na >> mesma linha correspondente das colunas A e B. O exemplo que segue anexo, >> imagino eu, facilita a compreensão do problema. >> >> Muito obrigado pela atenção, >> -- >> Paulo Eduardo de Mesquita >> Disciplina de Infectologia - Faculdade de Medicina Universidade do Oeste >> Paulista Presidente Prudente - São Paulo - Brasil >> telefone: 5518 97718261 >> _______________________________________________ >> 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. > > > > -- > > > > Alan Rodrigo Panosso > > > ---------------------------------------------------------------------------- > > Professor Assistente Doutor - Departamento de Ciências Exatas > Faculdade de Ciências Agrárias e Veterinárias - FCAV - UNESP/Jaboticabal > > Via de Acesso Prof.Paulo Donato Castellane s/n > > 14884-900 - Jaboticabal, SP > > E_mail: alan.panosso@u <ala...@mat.feis.unesp.br>nesp.br ou > > arpano...@yahoo.com.br > Tel.: (16) 3209-7210 > _______________________________________________ > 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.
_______________________________________________ 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.