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.