
Caros, Estou com um problema que não consegui resolver, caso alguém saiba um caminho para solucioná-lo será uma grande ajuda. Vamos lá, no data.frame (inv): inv <- data.frame( seq=c(1,1,1,1,1,1,1,2,2,2,2,2,2), dv=c(9,9,9,9,9,9,9,7,7,7,7,7,7), dom=c(1,1,2,2,2,4,4,2,2,3,3,4,4), veiculo=c(301,101,201,101,301,401,101,101,301,301,101,401,201), qtde=c(1,2,2,2,1,1,4,1,1,3,1,2,3), ano=c(2002,2008,1993,2007,1993,2003,2000,2008,2007,2000,2003,2005,1994), moto_bic=rep(0,13), carro=rep(0,13), tt_vei=rep(0,13), ano_m=rep(0,13)) para facilitar a visualização, seq dv dom veiculo qtde ano moto_bic carro tt_vei ano_m 1 9 1 301 1 2002 0 0 0 0 1 9 1 101 2 2008 0 0 0 0 1 9 2 201 2 1993 0 0 0 0 1 9 2 101 2 2007 0 0 0 0 1 9 2 301 1 1993 0 0 0 0 1 9 4 401 1 2003 0 0 0 0 1 9 4 101 4 2000 0 0 0 0 2 7 2 101 1 2008 0 0 0 0 2 7 2 301 1 2007 0 0 0 0 2 7 3 301 3 2000 0 0 0 0 2 7 3 101 1 2003 0 0 0 0 2 7 4 401 2 2005 0 0 0 0 2 7 4 201 3 1994 0 0 0 0 temos informações de residências e veículos, as residencias são determinadas por combinações das variáveis (seq dv e dom), assim, a sequencia 1 9 1 indica uma residencia, e a combinação 1 9 2 outra residencia, por fim, temos a residencia de número 2 7 4. A variável veiculo representa os veículos de cada residência, sendo: 101 bicicleta 201 moto 301 carro 401 outros veículos Como em uma casa podem existir vários veículos, as informações que definem uma residencia (seq dv e dom) foram repetidas ao longa das linhas. Exemplo, na residência 2 7 2 tem uma bicicleta e um carro, cada um veículo em uma linha. A variável qtde indica quantos veículos de determinado tipo existe em uma residencia e a variável ano indica o ano de fabricação do veículo. Meu objetivo principal e dispor as informações dos veículos em novas colunas, de modo que elimine a duplicidade das residencias e ao mesmo tempo não perca informações sobre os veículos. O resultado final que busco seria: seq dv dom moto_bic carro tt_vei ano_m 1 9 1 2 1 3 2006 1 9 2 4 1 5 1998 1 9 4 4 0 5 2000 2 7 2 1 1 2 2008 2 7 3 1 3 4 2002 2 7 4 3 0 5 1998 Para chegar no resultado acima é necessário, na variável moto_bic: i) obter a quantidade de motos e de bicicletas da respectiva residencia na variável carro: ii) informar a quantidade de carros da respectiva residencia na variável tt_vei: iii) informar o total de veículos da residencia, valendo notar que como existe outros veículos, apenas a soma das variáveis moto_bic com carro não é suficiente na variável ano_m: iv) informar o ano médio dos veículos de cada residencia v) por fim, é necessário eliminar as residencias duplicadas. Obs.: o data.frame (inv) criado para exemplificar o problema é pequeno, mas chego a utilizar data.frames com mais de 1 milhão de linhas. Desde já grato Roney