Paulo, 

Certamente há uma maneira mais elegante de fazer isso, mas talvez esse código te dê alguma pista:

df %>% 
  spread(CAUSA, CAUSA) %>% 
  unite(CAUSAS, A, B, C, D, E, F, G, H, I, sep = ",", remove = T) %>% 
  mutate(CAUSAS = str_remove_all(CAUSAS, ",NA")) %>% 
  mutate(CAUSAS = str_remove_all(CAUSAS, "NA,"))

Abs

Em qui, 29 de nov de 2018 às 10:30, Paulo Eduardo de Mesquita por (R-br) <r-br@listas.c3sl.ufpr.br> escreveu:
Prezado(a)s Colegas

Peço ajuda para um problema simples para o qual não encontro solução.

O código abaixo gera uma estrutura de dados de trabalho:

demo1.png

Eu quero muda-la para esse formato:

demo2.png


ID <- c(1, 1, 1, 1, 2, 2, 3, 3, 3)
NOME <- c("xpto", "xpto", "xpto", "xpto", "tpzo", "tpzo", "capr", "capr", "capr")
IDADE <- c(1, 1, 1, 1, 57, 57, 81, 81, 81)
SEXO <- c("M", "M", "M", "M", "M", "M", "F", "F", "F")
CAUSA <- c("A", "B", "C", "D", "E", "F","G","H","I")

df <- data.frame(ID, NOME, IDADE, SEXO, CAUSA)

df

Procurei soluções com as com as funções do pacote reshape2 (unmelt e dcast) e group_by do dplyr, mas não tive sucesso.

Fico grato por alguma dica.

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.