<div dir="ltr">Não sei o que é o within que você fala, e seu exemplo não é lá minimamente reproduzível. Então fica difícil ajudar.<div>Dito isso, talvez você deveria usar o spread (do pacote tidyr) em área. Mas é difícil ajudar mais sem saber o que você quer fazer direito e sem o exemplo reproduzível.</div><div><br></div><div>Abraço,</div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-11-01 18:18 GMT-02:00 Leonard Mendonça de Assis via R-br <span dir="ltr"><<a href="mailto:r-br@listas.c3sl.ufpr.br" target="_blank">r-br@listas.c3sl.ufpr.br</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="PT-BR" link="#0563C1" vlink="#954F72"><div class="m_4323424916153918851WordSection1"><p class="MsoNormal">Boa tarde a todos<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Surgiu uma dúvida conceitual aqui:<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Eu tenho um data.frame que precisa unir com vários outros, além de fazer várias transformações. Estou utilizando a seguinte sequencia para fazer tudo<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">bhz.data <-<u></u><u></u></p><p class="MsoNormal"> read_csv2(<u></u><u></u></p><p class="MsoNormal"> "Belo Horizonte 20161027.csv",<u></u><u></u></p><p class="MsoNormal"> col_types=colunas) %>%<u></u><u></u></p><p class="MsoNormal"> filter(Filtro == 1 & Filtro.Votar==1) %>%<u></u><u></u></p><p class="MsoNormal"> <span lang="EN-US">select(-Filtro, -Filtro.Votar) %>%<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> left_join(label.Sexo,by=c("<wbr>Sexo"="value")) %>% select(-Sexo) %>%<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> left_join(label.Faixa.Idade, by=c("Faixa.Idade"="value")) %>% select(-Faixa.Idade) %>%<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> left_join(label.Renda, by=c("Renda"="value")) %>% select(-Renda) %>%<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> left_join(label.classe, by=c("Renda.Classe"="value")) %>% select(-Renda.Classe) %>%<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> </span>left_join(label.Escolaridade, by=c("Escolaridade"="value")) %>% select(-Escolaridade) %>%<u></u><u></u></p><p class="MsoNormal"> <span lang="EN-US">left_join(label.Etinia, by=c('Etinia'="value")) %>% select(-Etinia) %>%<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> left_join(label.Religião, by=c("Religião"="value")) %>% select(-Religião) %>%<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> </span>left_join(label.Trabalha, by=c("Trabalha"="value")) %>% select(-Trabalha) %>%<u></u><u></u></p><p class="MsoNormal"><span lang="EN-US">mutate(Area.1 = ifelse(<a href="http://is.na" target="_blank">is.na</a>(Area.1),0,Area.1)<wbr>, Area.2 = ifelse(<a href="http://is.na" target="_blank">is.na</a>(Area.2),0,Area.2)<wbr>,<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> Area.3 = ifelse(<a href="http://is.na" target="_blank">is.na</a>(Area.3),0,Area.3)<wbr>) %>%<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> mutate(area.Educação =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 1,1,0) + ifelse(Area.2 == 1,1,0) + ifelse(Area.3 == 1,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Habitação =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 2,1,0) + ifelse(Area.2 == 2,1,0) + ifelse(Area.3 == 2,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Limpeza =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 3,1,0) + ifelse(Area.2 == 3,1,0) + ifelse(Area.3 == 3,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Obras.Mobilidade =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 4,1,0) + ifelse(Area.2 == 4,1,0) + ifelse(Area.3 == 4,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Obras.Pavimentação =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 5,1,0) + ifelse(Area.2 == 5,1,0) + ifelse(Area.3 == 5,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Saneamento =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 6,1,0) + ifelse(Area.2 == 6,1,0) + ifelse(Area.3 == 6,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Saúde =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 7,1,0) + ifelse(Area.2 == 7,1,0) + ifelse(Area.3 == 7,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Transpoorte =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 8,1,0) + ifelse(Area.2 == 8,1,0) + ifelse(Area.3 == 8,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Conservação =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 9,1,0) + ifelse(Area.2 == 9,1,0) + ifelse(Area.3 == 9,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Acessibilidade =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 10,1,0) + ifelse(Area.2 == 10,1,0) + ifelse(Area.3 == 10,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Combate.Mosquito =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 11,1,0) + ifelse(Area.2 == 11,1,0) + ifelse(Area.3 == 11,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.MeioAmbiente =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 12,1,0) + ifelse(Area.2 == 12,1,0) + ifelse(Area.3 == 12,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Social =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 13,1,0) + ifelse(Area.2 == 13,1,0) + ifelse(Area.3 == 13,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Esporte.Lazer =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 14,1,0) + ifelse(Area.2 == 14,1,0) + ifelse(Area.3 == 14,1,0),<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> area.Geração.Empregos =<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> ifelse(Area.1 == 15,1,0) + ifelse(Area.2 == 15,1,0) + ifelse(Area.3 == 15,1,0)) %>%<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"> </span>select(-Area.1, -Area.2, -Area.3)<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">A questão é a seguinte:<u></u><u></u></p><p class="MsoNormal">No caso da variável área, que é recodificada de 3 para 15 variáveis, quando eu substituo esta sequencia enorme de mutate por um within, as variáveis ficam em uma ordem diferente da que eu preciso. A questão é: como deixar o código mais limpo nesta situação, visto que esta alternativa funciona, mas parece ser meio gambiarra?<span class="HOEnZb"><font color="#888888"><u></u><u></u></font></span></p><span class="HOEnZb"><font color="#888888"><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Leonard<u></u><u></u></p></font></span></div></div><br>______________________________<wbr>_________________<br>
R-br mailing list<br>
<a href="mailto:R-br@listas.c3sl.ufpr.br">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/<wbr>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-<wbr>guia</a>) e forneça código mínimo reproduzível.<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">Manoel Galdino<br><a href="https://sites.google.com/site/galdinomcz/" target="_blank">https://sites.google.com/site/galdinomcz/</a><br></div>
</div>