Bom dia Bruno

Me parece que suas 3 funções são idênticas.

Passa a variável “Ciro Gomes” como parâmetro para a consolida1(). Deve ter 
algum erro de digitação na consolida2().


daniel



Daniel Tiezzi, MD, PhD
Professor Associado
Departamento de Ginecologia e Obstetrícia
Setor de Mastologia e Oncologia Ginecológica
Faculdade de Medicina de Ribeirão Preto - USP
Tel.: 16 3602-2488
e-mail: dtie...@fmrp.usp.br



> On 11 Jan 2019, at 09:16, Bruno César Pasquini por (R-br) 
> <r-br@listas.c3sl.ufpr.br> wrote:
> 
> ####### Codigo Reprodutivel...
> 
> library(data.table)
> 
> ### Percentual de Votos Validos nos estados e no exterior...
> perc_validos <- data.table(Regiao = c('Centro-Oeste', 'Centro-Oeste', 
> 'Centro-Oeste', 'Centro-Oeste', 'Exterior', 'Nordeste', 'Nordeste', 
> 'Nordeste', 'Nordeste', 'Nordeste', 'Nordeste', 'Nordeste', 'Nordeste', 
> 'Nordeste', 'Norte', 'Norte', 'Norte', 'Norte', 'Norte', 'Norte', 'Norte', 
> 'Sudeste', 'Sudeste', 'Sudeste', 'Sudeste', 'Sul', 'Sul', 'Sul'),
>                            Estado = c('Distrito Federal', 'Goias', 'Mato 
> Grosso', 'Mato Grosso do Sul', '', 'Alagoas', 'Bahia', 'Ceara', 'Maranhao', 
> 'Paraiba', 'Pernambuco', 'Piaui', 'Rio Grande do Norte', 'Sergipe', 'Acre', 
> 'Amapa', 'Amazonas', 'Para', 'Rondonia', 'Roraima', 'Tocantins', 'Espirito 
> Santo', 'Minas Gerais', 'Rio de Janeiro', 'Sao Paulo', 'Parana', 'Rio Grande 
> do Sul', 'Santa Catarina'),
>                            Bolsonaro = c(0.5837, 0.5724, 0.6004, 0.5506, 
> 0.5879, 0.3440, 0.2341, 0.2174, 0.2428, 0.3130, 0.3057, 0.1876, 0.3021, 
> 0.2721, 0.6224, 0.4074, 0.4348, 0.3619, 0.6224, 0.6297, 0.4464, 0.5476, 
> 0.4831, 0.5979, 0.5300, 0.5689, 0.5263, 0.6582),
>                            Haddad = c(0.1187, 0.2186, 0.2476, 0.2387, 0.1010, 
> 0.4475, 0.6028, 0.3312, 0.6126, 0.4546, 0.4887, 0.6340, 0.4119, 0.5009, 
> 0.1853, 0.3277, 0.4030, 0.4139, 0.2036, 0.1785, 0.4112, 0.2420, 0.2765, 
> 0.1469, 0.1642, 0.1970, 0.2281, 0.1513),
>                            Ciro = c(0.1660, 0.0860, 0.0559, 0.0804, 0.1452, 
> 0.1012, 0.0941, 0.4095, 0.0839, 0.1675, 0.1356, 0.1142, 0.2231, 0.1302, 
> 0.0517, 0.1234, 0.0750, 0.1003, 0.0603, 0.0536, 0.0717, 0.0954, 0.1164, 
> 0.1522, 0.1135, 0.0831, 0.1137, 0.0668),
>                            Outros = c(0.1316, 0.1230, 0.0961, 0.1304, 0.1659, 
> 0.1072, 0.0690, 0.0419, 0.0606, 0.0650, 0.0700, 0.0642, 0.0631, 0.0967, 
> 0.1405, 0.1417, 0.0873, 0.1237, 0.1739, 0.1383, 0.0707, 0.1149, 0.1241, 
> 0.1030, 0.1922, 0.1510, 0.1318, 0.1236)
>                            )
> ### Analisando o data.table perc_validos...
> perc_validos; class(perc_validos); str(perc_validos); dim(perc_validos)
> 
> ### Total de Votos Validos por regiao e no exterior...
> votos_regiao <- data.table(Regiao = c('Centro-Oeste', 'Exterior', 'Nordeste', 
> 'Norte', 'Sudeste', 'Sul'),
>                            'Jair Bolsonaro' = c(4555415, 113690, 7453186, 
> 3785038, 23915925, 9453736),
>                            'Fernando Haddad' = c(1642054, 19540, 14583334, 
> 3211002, 8623232, 3262843),
>                            'Ciro Gomes' = c(750776, 28073, 4892961, 748170, 
> 5425104, 1499282),
>                            'Demais Candidatos' = c(952142, 32078, 1894092, 
> 982103, 6968773, 2258047)
>                            )
> ### Analisando o data.table votos_regiao...
> votos_regiao; class(votos_regiao); str(votos_regiao); dim(votos_regiao)
> 
> ### Fazendo o cruzamento... Ou pelo menos tentando...
> consolida1 <- function(Candidato) {
>    temporario <- merge(x = perc_validos,
>                        y = votos_regiao[, .(Regiao,
>                                             Candidato)],
>                        by = "Regiao",
>                        all.x = TRUE,
>                        sort = TRUE)
>    return(temporario)
> }
> consolida1(Candidato = "Jair Bolsonaro")
> 
> consolida2 <- function(Candidato) {
>    temporario <- merge(x = perc_validos,
>                        y = votos_regiao[, .(Regiao,
>                                             substitute(Candidato))],
>                        by = "Regiao",
>                        all.x = TRUE,
>                        sort = TRUE)
>    return(temporario)
> }
> consolida2(Candidato = "Ciro Gomes")
> 
> consolida3 <- function(Candidato) {
>    temporario <- merge(x = perc_validos,
>                        y = votos_regiao[, .(Regiao,
>                                             eval(Candidato))],
>                        by = "Regiao",
>                        all.x = TRUE,
>                        sort = TRUE)
>    return(temporario)
> }
> consolida3(Candidato = "Fernando Haddad")

_______________________________________________
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.

Responder a