<div dir="ltr"><br><div>Obrigado ao Daniel, ao Luciano e ao Jônatan,</div><div><br></div><div>Cada uma das soluções apresentadas, contém, a sua forma, lições muito interessantes.</div><div><br></div><div>A solução do Daniel, embora um pouco mais exaustiva, mostra como desmontar uma estrutura de dados em listas e depois fazer a engenharia reversa numa nova estrutura bidimensional na orientação desejada.</div><div><br></div><div>Já as soluções do Luciano e também a do Jônatan; mais elegantes e econômicas que essas, só com mágica; e mágica não me interessa.</div><div><br></div><div>Muito obrigado a todos,</div><div><br></div><div>PM</div></div><br><div class="gmail_quote"><div dir="ltr">Em sex, 30 de nov de 2018 às 12:00, <<a href="mailto:r-br-request@listas.c3sl.ufpr.br">r-br-request@listas.c3sl.ufpr.br</a>> escreveu:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Enviar submissões para a lista de discussão R-br para <br>
        <a href="mailto:r-br@listas.c3sl.ufpr.br" target="_blank">r-br@listas.c3sl.ufpr.br</a><br>
<br>
Para se cadastrar ou descadastrar via WWW, visite o endereço<br>
        <a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" rel="noreferrer" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
ou, via email, envie uma mensagem com a palavra 'help' no assunto ou<br>
corpo da mensagem para <br>
        <a href="mailto:r-br-request@listas.c3sl.ufpr.br" target="_blank">r-br-request@listas.c3sl.ufpr.br</a><br>
<br>
Você poderá entrar em contato com a pessoa que gerencia a lista pelo<br>
endereço<br>
        <a href="mailto:r-br-owner@listas.c3sl.ufpr.br" target="_blank">r-br-owner@listas.c3sl.ufpr.br</a><br>
<br>
Quando responder, por favor edite sua linha Assunto assim ela será<br>
mais específica que "Re: Contents of R-br digest..."<br>
<br>
<br>
Tópicos de Hoje:<br>
<br>
   1. Re: Modificação da orientação de estrutura de dados<br>
      (Leonardo Mancini)<br>
   2. Re: Modificação da orientação de estrutura de dados<br>
      (Daniel Guimarães Tiezzi)<br>
   3. Re: Modificação da orientação de estrutura de dados (Jônatan)<br>
<br>
<br>
----------------------------------------------------------------------<br>
<br>
Message: 1<br>
Date: Thu, 29 Nov 2018 12:04:32 -0200<br>
From: Leonardo Mancini <<a href="mailto:lmancini@gmail.com" target="_blank">lmancini@gmail.com</a>><br>
To: <a href="mailto:r-br@listas.c3sl.ufpr.br" target="_blank">r-br@listas.c3sl.ufpr.br</a><br>
Subject: Re: [R-br] Modificação da orientação de estrutura de<br>
        dados<br>
Message-ID:<br>
        <CABAOmR02Yd4XgrYj92r47vpURiiivMDcYNo=sF=<a href="mailto:G9daTjs9KhQ@mail.gmail.com" target="_blank">G9daTjs9KhQ@mail.gmail.com</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Paulo,<br>
<br>
Certamente há uma maneira mais elegante de fazer isso, mas talvez esse<br>
código te dê alguma pista:<br>
<br>
df %>%<br>
  spread(CAUSA, CAUSA) %>%<br>
  unite(CAUSAS, A, B, C, D, E, F, G, H, I, sep = ",", remove = T) %>%<br>
  mutate(CAUSAS = str_remove_all(CAUSAS, ",NA")) %>%<br>
  mutate(CAUSAS = str_remove_all(CAUSAS, "NA,"))<br>
<br>
Abs<br>
<br>
Em qui, 29 de nov de 2018 às 10:30, Paulo Eduardo de Mesquita por (R-br) <<br>
<a href="mailto:r-br@listas.c3sl.ufpr.br" target="_blank">r-br@listas.c3sl.ufpr.br</a>> escreveu:<br>
<br>
> Prezado(a)s Colegas<br>
><br>
> Peço ajuda para um problema simples para o qual não encontro solução.<br>
><br>
> O código abaixo gera uma estrutura de dados de trabalho:<br>
><br>
> [image: demo1.png]<br>
><br>
> Eu quero muda-la para esse formato:<br>
><br>
> [image: demo2.png]<br>
><br>
><br>
> ID <- c(1, 1, 1, 1, 2, 2, 3, 3, 3)<br>
> NOME <- c("xpto", "xpto", "xpto", "xpto", "tpzo", "tpzo", "capr", "capr",<br>
> "capr")<br>
> IDADE <- c(1, 1, 1, 1, 57, 57, 81, 81, 81)<br>
> SEXO <- c("M", "M", "M", "M", "M", "M", "F", "F", "F")<br>
> CAUSA <- c("A", "B", "C", "D", "E", "F","G","H","I")<br>
><br>
> df <- data.frame(ID, NOME, IDADE, SEXO, CAUSA)<br>
><br>
> df<br>
><br>
> Procurei soluções com as com as funções do pacote reshape2 (unmelt e<br>
> dcast) e group_by do dplyr, mas não tive sucesso.<br>
><br>
> Fico grato por alguma dica.<br>
><br>
> Muito obrigado pela atenção.<br>
> --<br>
> Paulo Eduardo de Mesquita<br>
> Disciplina de Infectologia - Faculdade de Medicina  Universidade do Oeste<br>
> Paulista Presidente Prudente - São Paulo - Brasil<br>
> telefone: 5518 97718261<br>
> _______________________________________________<br>
> R-br mailing list<br>
> <a href="mailto: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" rel="noreferrer" 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" rel="noreferrer" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça<br>
> código mínimo reproduzível.<br>
-------------- Próxima Parte ----------<br>
Um anexo em HTML foi limpo...<br>
URL: <<a href="http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/7bd3a241/attachment-0001.html" rel="noreferrer" target="_blank">http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/7bd3a241/attachment-0001.html</a>><br>
-------------- Próxima Parte ----------<br>
Um anexo não-texto foi limpo...<br>
Nome: demo1.png<br>
Tipo: image/png<br>
Tamanho: 3960 bytes<br>
Descrição: não disponível<br>
URL: <<a href="http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/7bd3a241/attachment-0002.png" rel="noreferrer" target="_blank">http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/7bd3a241/attachment-0002.png</a>><br>
-------------- Próxima Parte ----------<br>
Um anexo não-texto foi limpo...<br>
Nome: demo2.png<br>
Tipo: image/png<br>
Tamanho: 2925 bytes<br>
Descrição: não disponível<br>
URL: <<a href="http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/7bd3a241/attachment-0003.png" rel="noreferrer" target="_blank">http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/7bd3a241/attachment-0003.png</a>><br>
<br>
------------------------------<br>
<br>
Message: 2<br>
Date: Thu, 29 Nov 2018 12:26:45 -0200<br>
From: Daniel Guimarães Tiezzi <<a href="mailto:dtiezzi@usp.br" target="_blank">dtiezzi@usp.br</a>><br>
To: "a lista Brasileira oficial de discussão do programa R."<br>
        <<a href="mailto:r-br@listas.c3sl.ufpr.br" target="_blank">r-br@listas.c3sl.ufpr.br</a>><br>
Cc: Paulo Eduardo de Mesquita <<a href="mailto:paulomesquita7@gmail.com" target="_blank">paulomesquita7@gmail.com</a>><br>
Subject: Re: [R-br] Modificação da orientação de estrutura de<br>
        dados<br>
Message-ID: <<a href="mailto:060B7FE8-BC19-4D9B-8083-07CE255C6617@usp.br" target="_blank">060B7FE8-BC19-4D9B-8083-07CE255C6617@usp.br</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Pode ser que não seja o mais rápido, mas resolve<br>
<br>
ID <- c(1, 1, 1, 1, 2, 2, 3, 3, 3)<br>
NOME <- c("xpto", "xpto", "xpto", "xpto", "tpzo", "tpzo", "capr", "capr", "capr")<br>
IDADE <- c(1, 1, 1, 1, 57, 57, 81, 81, 81)<br>
SEXO <- c("M", "M", "M", "M", "M", "M", "F", "F", "F")<br>
CAUSA <- c("A", "B", "C", "D", "E", "F","G","H","I")<br>
<br>
df <- data.frame(ID, NOME, IDADE, SEXO, CAUSA)<br>
<br>
df<br>
<br>
names <- unique(df$NOME)<br>
id_l = list()<br>
nome_l = list()<br>
idade_l = list()<br>
sexo_l = list()<br>
causa_l = list()<br>
<br>
for (i in 1:length(names)) {<br>
  name = names[i]<br>
  block = as.data.frame(df[df$NOME == name, ])<br>
  id = block$ID[1]<br>
  nome = block$NOME[1]<br>
  idade = block$IDADE[1]<br>
  sexo = block$SEXO[1]<br>
  causa = vector()<br>
  for (j in 1:nrow(block)) {<br>
    causa = paste0(causa,block$CAUSA[j], sep = ',')<br>
  }<br>
  print(causa)<br>
  id_l[[paste0(i)]] <- id<br>
  nome_l[[paste0(i)]] <- nome<br>
  idade_l[[paste0(i)]] <- idade<br>
  sexo_l[[paste0(i)]] <- sexo<br>
  causa_l[[paste0(i)]] <- causa<br>
}<br>
<br>
unlist(causa_l)<br>
<br>
dfNew <- data.frame(ID = unlist(id_l), NOME= unlist(nome_l), IDADE= unlist(idade_l), SEXO= unlist(sexo_l), CAUSA= unlist(causa_l))<br>
print(dfNew)<br>
<br>
Abraço<br>
<br>
daniel<br>
<br>
Daniel Tiezzi, MD, PhD<br>
Professor Associado<br>
Departamento de Ginecologia e Obstetrícia<br>
Setor de Mastologia e Oncologia Ginecológica<br>
Faculdade de Medicina de Ribeirão Preto - USP<br>
Tel.: 16 3602-2488<br>
e-mail: <a href="mailto:dtiezzi@fmrp.usp.br" target="_blank">dtiezzi@fmrp.usp.br</a><br>
<br>
> On Nov 29, 2018, at 10:30 AM, Paulo Eduardo de Mesquita por (R-br) <<a href="mailto:r-br@listas.c3sl.ufpr.br" target="_blank">r-br@listas.c3sl.ufpr.br</a>> wrote:<br>
> <br>
> ID <- c(1, 1, 1, 1, 2, 2, 3, 3, 3)<br>
> NOME <- c("xpto", "xpto", "xpto", "xpto", "tpzo", "tpzo", "capr", "capr", "capr")<br>
> IDADE <- c(1, 1, 1, 1, 57, 57, 81, 81, 81)<br>
> SEXO <- c("M", "M", "M", "M", "M", "M", "F", "F", "F")<br>
> CAUSA <- c("A", "B", "C", "D", "E", "F","G","H","I")<br>
> <br>
> df <- data.frame(ID, NOME, IDADE, SEXO, CAUSA)<br>
> <br>
> df<br>
<br>
-------------- Próxima Parte ----------<br>
Um anexo em HTML foi limpo...<br>
URL: <<a href="http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/778f1d5b/attachment-0001.html" rel="noreferrer" target="_blank">http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/778f1d5b/attachment-0001.html</a>><br>
<br>
------------------------------<br>
<br>
Message: 3<br>
Date: Thu, 29 Nov 2018 14:08:54 -0200<br>
From: Jônatan <<a href="mailto:jdtatsch@gmail.com" target="_blank">jdtatsch@gmail.com</a>><br>
To: a lista Brasileira oficial de discussão do programa R.<br>
        <<a href="mailto:r-br@listas.c3sl.ufpr.br" target="_blank">r-br@listas.c3sl.ufpr.br</a>><br>
Subject: Re: [R-br] Modificação da orientação de estrutura de<br>
        dados<br>
Message-ID:<br>
        <CAEiHnvPm3sJcOZSQE1HnNnSrHY=<a href="mailto:FrYZrwaNCXmw9OLbLmNH6Fw@mail.gmail.com" target="_blank">FrYZrwaNCXmw9OLbLmNH6Fw@mail.gmail.com</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Alternativa também com dplyr.<br>
<br>
library(dplyr)<br>
df %>%<br>
group_by_at(vars(-CAUSA)) %>%<br>
summarise(CAUSA = paste(CAUSA, collapse = ", "))<br>
<br>
<br>
On Thu, Nov 29, 2018 at 12:04 PM Leonardo Mancini por (R-br) <<br>
<a href="mailto:r-br@listas.c3sl.ufpr.br" target="_blank">r-br@listas.c3sl.ufpr.br</a>> wrote:<br>
<br>
> Paulo,<br>
><br>
> Certamente há uma maneira mais elegante de fazer isso, mas talvez esse<br>
> código te dê alguma pista:<br>
><br>
> df %>%<br>
>   spread(CAUSA, CAUSA) %>%<br>
>   unite(CAUSAS, A, B, C, D, E, F, G, H, I, sep = ",", remove = T) %>%<br>
>   mutate(CAUSAS = str_remove_all(CAUSAS, ",NA")) %>%<br>
>   mutate(CAUSAS = str_remove_all(CAUSAS, "NA,"))<br>
><br>
> Abs<br>
><br>
> Em qui, 29 de nov de 2018 às 10:30, Paulo Eduardo de Mesquita por (R-br) <<br>
> <a href="mailto:r-br@listas.c3sl.ufpr.br" target="_blank">r-br@listas.c3sl.ufpr.br</a>> escreveu:<br>
><br>
>> Prezado(a)s Colegas<br>
>><br>
>> Peço ajuda para um problema simples para o qual não encontro solução.<br>
>><br>
>> O código abaixo gera uma estrutura de dados de trabalho:<br>
>><br>
>> [image: demo1.png]<br>
>><br>
>> Eu quero muda-la para esse formato:<br>
>><br>
>> [image: demo2.png]<br>
>><br>
>><br>
>> ID <- c(1, 1, 1, 1, 2, 2, 3, 3, 3)<br>
>> NOME <- c("xpto", "xpto", "xpto", "xpto", "tpzo", "tpzo", "capr", "capr",<br>
>> "capr")<br>
>> IDADE <- c(1, 1, 1, 1, 57, 57, 81, 81, 81)<br>
>> SEXO <- c("M", "M", "M", "M", "M", "M", "F", "F", "F")<br>
>> CAUSA <- c("A", "B", "C", "D", "E", "F","G","H","I")<br>
>><br>
>> df <- data.frame(ID, NOME, IDADE, SEXO, CAUSA)<br>
>><br>
>> df<br>
>><br>
>> Procurei soluções com as com as funções do pacote reshape2 (unmelt e<br>
>> dcast) e group_by do dplyr, mas não tive sucesso.<br>
>><br>
>> Fico grato por alguma dica.<br>
>><br>
>> Muito obrigado pela atenção.<br>
>> --<br>
>> Paulo Eduardo de Mesquita<br>
>> Disciplina de Infectologia - Faculdade de Medicina  Universidade do Oeste<br>
>> Paulista Presidente Prudente - São Paulo - Brasil<br>
>> telefone: 5518 97718261<br>
>> _______________________________________________<br>
>> R-br mailing list<br>
>> <a href="mailto: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" rel="noreferrer" 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" rel="noreferrer" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça<br>
>> código mínimo reproduzível.<br>
><br>
> _______________________________________________<br>
> R-br mailing list<br>
> <a href="mailto: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" rel="noreferrer" 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" rel="noreferrer" 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>
###############################################################<br>
##  Jônatan Dupont Tatsch<br>
##  Professor do Departamento de Física<br>
##  Centro de Ciências Exatas e Naturais (CCNE)<br>
##  Universidade Federal de Santa Maria - UFSM<br>
##  Faixa de Camobi, Prédio 13 - Campus UFSM - Santa Maria, RS, Brasil -<br>
97105-900<br>
##  Telefone: +55(55)33012083<br>
##  <a href="http://www.ufsm.br/meteorologia" rel="noreferrer" target="_blank">www.ufsm.br/meteorologia</a><br>
###############################################################<br>
-------------- Próxima Parte ----------<br>
Um anexo em HTML foi limpo...<br>
URL: <<a href="http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/c0417ec9/attachment-0001.html" rel="noreferrer" target="_blank">http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/c0417ec9/attachment-0001.html</a>><br>
-------------- Próxima Parte ----------<br>
Um anexo não-texto foi limpo...<br>
Nome: demo1.png<br>
Tipo: image/png<br>
Tamanho: 3960 bytes<br>
Descrição: não disponível<br>
URL: <<a href="http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/c0417ec9/attachment-0002.png" rel="noreferrer" target="_blank">http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/c0417ec9/attachment-0002.png</a>><br>
-------------- Próxima Parte ----------<br>
Um anexo não-texto foi limpo...<br>
Nome: demo2.png<br>
Tipo: image/png<br>
Tamanho: 2925 bytes<br>
Descrição: não disponível<br>
URL: <<a href="http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/c0417ec9/attachment-0003.png" rel="noreferrer" target="_blank">http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181129/c0417ec9/attachment-0003.png</a>><br>
<br>
------------------------------<br>
<br>
Subject: Legenda do Digest<br>
<br>
_______________________________________________<br>
R-br mailing list<br>
<a href="mailto: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" rel="noreferrer" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
<br>
<br>
------------------------------<br>
<br>
Fim da Digest R-br, volume 95, assunto 23<br>
*****************************************<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature">Paulo Eduardo de Mesquita<br>Disciplina de Infectologia - Faculdade de Medicina  Universidade do Oeste Paulista Presidente Prudente - São Paulo - Brasil<br>telefone: 5518 97718261</div>