Hasta el momento, hemos visto:
Ahora, uno de los desafíos a los que nos vamos a enfrentar es la integración desde distintos orígenes de datos.
Este proceso combina data frames con diferente información, siempre que tengan un campo común (key), y este no se repita en ninguna otra columna.
Traigamos tres data frames:
library(rio)
#link base
base='https://github.com/PoliticayGobiernoPUCP/estadistica_anapol2/raw/master/DATA/'
#creando links particulares
corruptionLK=paste0(base,'corruption.csv')
gdpLK=paste0(base,'gdp.csv')
demoLK=paste0(base,'demo.csv')
# trayendo data:
corru=import(corruptionLK,stringsAsFactors = F)
gdp=import(gdpLK,stringsAsFactors = F)
democ=import(demoLK,stringsAsFactors = F,encoding="UTF-8")
Estos tres data frames deben tener un campo (columa) en común que sirva de “key”:
names(corru)
## [1] "Rank" "Country" "2016Score" "2015Score" "2014Score" "2013Score"
## [7] "2012Score" "Region"
names(gdp)
## [1] "Rank" "Country" "pbi" "estimado"
names(democ)
## [1] "Rank" "Country"
## [3] "Score" "Electoralprocessandpluralism"
## [5] "Functioningofgovernment" "Politicalparticipation"
## [7] "Politicalculture" "Civilliberties"
## [9] "Regimetype" "Region"
El merge producirá una tabla, integrando las columnas que correspondan a cada key. Vea que la columna rank está presente en las tres pero no es la key; como el ranking se puede calcular si se necesitase, eliminemoslos de cada data frame:
# eliminando
corru$Rank=NULL
gdp$Rank=NULL
democ$Rank=NULL
La columna Score de la tabla democ podriamos cambiar para no olvidar qué representa:
names(democ)[names(democ)=='Score']='ScoreDemo'
Hay una column Region en dos tablas:
table(corru$Region)
##
## Americas
## 11
## Asia
## 1
## Asia Pacific
## 7
## Caribbean
## 8
## Central America
## 3
## Central Asia
## 7
## East Asia
## 3
## Europe
## 39
## Europe and Central Asia
## 1
## Europe and Northern Asia
## 1
## Europe and Western Asia
## 3
## Maritime South East Asia
## 3
## Maritime Southeast Asia
## 4
## Middle East
## 13
## Middle East and North Africa
## 1
## North Africa
## 6
## North America
## 1
## South America
## 9
## South Asia
## 5
## South Asia and Central Asia
## 1
## South East Asia
## 5
## Sub Saharan Africa
## 44
## To get in-depth information visit:Transparency International
## 1
table(democ$Region)
##
## Africa Asia Europe North America Oceania
## 50 42 45 14 4
## South America
## 12
Quedémonos con la de democracia:
# eliminando
corru$Region=NULL
Con estas bases de datos, vamos a explorar los escenarios de merge que podemos aplicar. Ten en cuenta que el método principal de la función merge es para data frames. Sin embargo, merge es una función genérica que también se puede usar con otros objetos (como vectores o matrices), pero serán transformados a la clase data.frame.
Un inner join (en realidad un natural join), es la unión de conjuntos de datos más habitual que se puede realizar. Consiste en fusionar dos data frames en uno que contenga los elementos comunes de ambos. Para fusionar o unir los dos conjuntos de datos de muestra, solo tienes que pasarlos a la función merge, sin la necesidad de cambiar otros argumentos, debido a que, de manera predeterminada, la función combina los conjuntos de datos por los nombres de las columnas comunes.
corrgdp=merge(corru,gdp)
corrgdp=merge(corru,gdp,by.x='Country', by.y='Country')# otra forma equivalente
str(corrgdp)
## 'data.frame': 164 obs. of 8 variables:
## $ Country : chr "Afghanistan" "Albania" "Algeria" "Angola" ...
## $ 2016Score: chr "15" "39" "34" "18" ...
## $ 2015Score: chr "11" "36" "36" "15" ...
## $ 2014Score: chr "12" "33" "36" "19" ...
## $ 2013Score: chr "8" "31" "36" "23" ...
## $ 2012Score: chr "8" "33" "34" "22" ...
## $ pbi : int 2000 12500 15200 6800 20900 9500 50400 50000 17500 49000 ...
## $ estimado : int 2017 2017 2017 2017 2017 2017 2017 2017 2017 2017 ...
El resultado es un data frame que contiene las observaciones que están presentes en ambos data frames, las que no, no están presentes en la salida resultante.
El outer join, o unión completa, combina todas las columnas de ambos conjuntos de datos en uno para todos los elemento. Para crear el full outer join de dos data frames en R tienes que establecer el argumento all como TRUE.
corrgdp2=merge(corru,gdp,all=TRUE)
str(corrgdp2)
## 'data.frame': 241 obs. of 8 variables:
## $ Country : chr "Afghanistan" "Albania" "Algeria" "American Samoa" ...
## $ 2016Score: chr "15" "39" "34" NA ...
## $ 2015Score: chr "11" "36" "36" NA ...
## $ 2014Score: chr "12" "33" "36" NA ...
## $ 2013Score: chr "8" "31" "36" NA ...
## $ 2012Score: chr "8" "33" "34" NA ...
## $ pbi : int 2000 12500 15200 11200 49900 6800 12200 26400 20900 9500 ...
## $ estimado : int 2017 2017 2017 2016 2015 2017 2008 2017 2017 2017 ...
Ahora tenemos un data frame con todos los casos. Como no todas las filas en el primer data frame coinciden con todas las filas en el segundo, en la salida aparecen valores NA en esos casos.
El left join en R consiste en unir todas las filas del primer data frame con los valores correspondientes del segundo.Para crear la unión, tienes que establecer all.x = TRUE.
corrgdp3=merge(corru,gdp,all.x = TRUE)
str(corrgdp3)
## 'data.frame': 177 obs. of 8 variables:
## $ Country : chr "Afghanistan" "Albania" "Algeria" "Angola" ...
## $ 2016Score: chr "15" "39" "34" "18" ...
## $ 2015Score: chr "11" "36" "36" "15" ...
## $ 2014Score: chr "12" "33" "36" "19" ...
## $ 2013Score: chr "8" "31" "36" "23" ...
## $ 2012Score: chr "8" "33" "34" "22" ...
## $ pbi : int 2000 12500 15200 6800 20900 9500 50400 50000 17500 NA ...
## $ estimado : int 2017 2017 2017 2017 2017 2017 2017 2017 2017 NA ...
Ahora tenemos un data frame con todos los casos de la primera base de datos (177 casos). Si esta contiene observaciones que no están en la segunda base de datos, tendra NA como valores en las variables que correspondan.
El right join en R es lo opuesto al left outer join. En este caso, la combinación consiste en unir todas las filas del segundo data frame con las correspondientes en el primero.En consecuencia, necesitarás establecer el argumento all.y como TRUE para unir los data frames de esta manera.
corrgdp4=merge(corru,gdp,all.y = TRUE)
str(corrgdp4)
## 'data.frame': 228 obs. of 8 variables:
## $ Country : chr "Afghanistan" "Albania" "Algeria" "American Samoa" ...
## $ 2016Score: chr "15" "39" "34" NA ...
## $ 2015Score: chr "11" "36" "36" NA ...
## $ 2014Score: chr "12" "33" "36" NA ...
## $ 2013Score: chr "8" "31" "36" NA ...
## $ 2012Score: chr "8" "33" "34" NA ...
## $ pbi : int 2000 12500 15200 11200 49900 6800 12200 26400 20900 9500 ...
## $ estimado : int 2017 2017 2017 2016 2015 2017 2008 2017 2017 2017 ...
Ahora tenemos un data frame con todos los casos de la segunda base de datos (228 casos). Si esta contiene observaciones que no están en la segunda base de datos, tendra NA como valores en las variables que correspondan.
El cross join o unión cruzada, realiza el producto cartesiano de los conjuntos de datos. Puedes crear un cross join en R estableciendo como NULL el argumento by de la función merge.
corrgdp5=merge(corru,gdp,by=NULL)
str(corrgdp5)
## 'data.frame': 40356 obs. of 9 variables:
## $ Country.x: chr "Denmark" "New Zealand" "Finland" "Sweden" ...
## $ 2016Score: chr "90" "90" "89" "88" ...
## $ 2015Score: chr "91" "88" "90" "89" ...
## $ 2014Score: chr "92" "91" "89" "87" ...
## $ 2013Score: chr "91" "91" "89" "89" ...
## $ 2012Score: chr "90" "90" "90" "88" ...
## $ Country.y: chr "Liechtenstein" "Liechtenstein" "Liechtenstein" "Liechtenstein" ...
## $ pbi : int 139100 139100 139100 139100 139100 139100 139100 139100 139100 139100 ...
## $ estimado : int 2009 2009 2009 2009 2009 2009 2009 2009 2009 2009 ...
Puede unir los tres data frames fusionando primero dos y uniendo la salida con el tercer conjunto de datos. Ten en cuenta que puedes especificar los argumentos que prefieras para cada combinación y que puedes concatenar tantos merge como necesites.
corrgdpdemoc=merge(democ, merge(corru, gdp))
Estas operaciones también las podemos hacer con Dplyr, la cual hemos utilizado anteriormente.
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
data_resultado1=left_join(corru,gdp,by="Country") #left_join Prioriza las filas de la primera base de datos
head(data_resultado1)
## Country 2016Score 2015Score 2014Score 2013Score 2012Score pbi estimado
## 1 Denmark 90 91 92 91 90 50100 2017
## 2 New Zealand 90 88 91 91 90 39000 2017
## 3 Finland 89 90 89 89 90 44500 2017
## 4 Sweden 88 89 87 89 88 51200 2017
## 5 Switzerland 86 86 86 85 86 62100 2017
## 6 Norway 85 87 86 86 85 72100 2017
data_resultado2=right_join(corru,gdp,by="Country") #right_join Prioriza las filas de la segunda base de datos.
head(data_resultado2)
## Country 2016Score 2015Score 2014Score 2013Score 2012Score pbi
## 1 Liechtenstein <NA> <NA> <NA> <NA> <NA> 139100
## 2 Qatar 61 71 69 68 68 124100
## 3 Monaco <NA> <NA> <NA> <NA> <NA> 115700
## 4 Macau <NA> <NA> <NA> <NA> <NA> 110000
## 5 Luxembourg 81 81 82 80 80 105100
## 6 Bermuda <NA> <NA> <NA> <NA> <NA> 99400
## estimado
## 1 2009
## 2 2017
## 3 2015
## 4 2017
## 5 2017
## 6 2016
data_resultado3=inner_join(corru,gdp,by="Country") #inner_join Prioriza las filas que COINCIDEN en ambas fillas base de
head(data_resultado3)
## Country 2016Score 2015Score 2014Score 2013Score 2012Score pbi estimado
## 1 Denmark 90 91 92 91 90 50100 2017
## 2 New Zealand 90 88 91 91 90 39000 2017
## 3 Finland 89 90 89 89 90 44500 2017
## 4 Sweden 88 89 87 89 88 51200 2017
## 5 Switzerland 86 86 86 85 86 62100 2017
## 6 Norway 85 87 86 86 85 72100 2017
data_resultado4=full_join(corru,gdp,by="Country") #full_join PPrioriza las filas que están en ambas fillas base de datos
head(data_resultado4)
## Country 2016Score 2015Score 2014Score 2013Score 2012Score pbi estimado
## 1 Denmark 90 91 92 91 90 50100 2017
## 2 New Zealand 90 88 91 91 90 39000 2017
## 3 Finland 89 90 89 89 90 44500 2017
## 4 Sweden 88 89 87 89 88 51200 2017
## 5 Switzerland 86 86 86 85 86 62100 2017
## 6 Norway 85 87 86 86 85 72100 2017
data_resultado5=full_join(corru,gdp,by="Country") %>%
select(-estimado) %>% rename(PIB = pbi) # igual que el anterior, pero utilizo las herramientas de dplyr para a la vez omitir una variable ("estimado") y renombrar la variable PBI
head(data_resultado5)
## Country 2016Score 2015Score 2014Score 2013Score 2012Score PIB
## 1 Denmark 90 91 92 91 90 50100
## 2 New Zealand 90 88 91 91 90 39000
## 3 Finland 89 90 89 89 90 44500
## 4 Sweden 88 89 87 89 88 51200
## 5 Switzerland 86 86 86 85 86 62100
## 6 Norway 85 87 86 86 85 72100
Appending es unir diversas tablas en una sola,pero todas tienen los mismos nombres de columna.
df1=read.csv('https://github.com/PoliticayGobiernoPUCP/estadistica_anapol2/raw/master/DATA/interview_1_2_p1.csv')
df2=read.csv('https://github.com/PoliticayGobiernoPUCP/estadistica_anapol2/raw/master/DATA/interview_1_2_p2.csv')
df3=read.csv('https://github.com/PoliticayGobiernoPUCP/estadistica_anapol2/raw/master/DATA/interview_1_2_p3.csv')
df4=read.csv('https://github.com/PoliticayGobiernoPUCP/estadistica_anapol2/raw/master/DATA/interview_1_2_p4.csv')
names(df1) ; names(df2) ; names(df3); names(df4)
## [1] "interview" "q1" "q2"
## [1] "interview" "q1" "q2"
## [1] "interview" "q1" "q2"
## [1] "interview" "q1" "q2"
Para tener un unico data frame, necesitamos anexarlas con rbind:
df1234=rbind(df1,df2,df3,df4)
Cuando agregas, sintetizas los valores de tu unidad de analisis en otro que contiene a un conjuntos de estas. Traigamos los datos del Censo Actual, que indica la disponibilidad de agua a nivel de distrito en el Perú:
Lk="https://github.com/PoliticayGobiernoPUCP/estadistica_anapol2/raw/master/DATA/AGUA.xlsx"
agua=import(Lk)
Veamos ls tipos de datos:
str(agua)
## 'data.frame': 1874 obs. of 6 variables:
## $ Código : num 10101 10102 10103 10104 10105 ...
## $ Departamento: chr "Amazonas" "Amazonas" "Amazonas" "Amazonas" ...
## $ Provincia : chr "Chachapoyas" "Chachapoyas" "Chachapoyas" "Chachapoyas" ...
## $ Distrito : chr "Chachapoyas" "Asunción" "Balsas" "Cheto" ...
## $ todaSemana : num 6307 84 194 186 155 ...
## $ NoTodaSemana: num 398 15 39 0 8 27 8 80 35 80 ...
Se ve que cada fila es un distrito:
head(agua)
## Código Departamento Provincia Distrito todaSemana NoTodaSemana
## 1 10101 Amazonas Chachapoyas Chachapoyas 6307 398
## 2 10102 Amazonas Chachapoyas Asunción 84 15
## 3 10103 Amazonas Chachapoyas Balsas 194 39
## 4 10104 Amazonas Chachapoyas Cheto 186 0
## 5 10105 Amazonas Chachapoyas Chiliquin 155 8
## 6 10106 Amazonas Chachapoyas Chuquibamba 368 27
La data muestra la cantidad de viviendas por distrito que tienen agua toda la semana o no. Como una provincia tiene varias provincias podriamos crear un data frame a nivel de departamento.
aggregate(cbind(todaSemana, NoTodaSemana) # dependientes
~ Departamento, # nivel
data = agua, # data
sum) # operacion
## Departamento todaSemana NoTodaSemana
## 1 Amazonas 60437 18934
## 2 Áncash 218655 27995
## 3 Apurímac 95096 12818
## 4 Arequipa 295356 43526
## 5 Ayacucho 131789 20417
## 6 Cajamarca 249027 47076
## 7 Callao 217279 14778
## 8 Cusco 237459 35128
## 9 Huancavelica 71453 10749
## 10 Huánuco 106549 19824
## 11 Ica 131790 61679
## 12 Junín 225002 37168
## 13 La Libertad 302200 73558
## 14 Lambayeque 230536 21097
## 15 Lima 2011906 180251
## 16 Loreto 87272 16394
## 17 Madre de Dios 27094 2845
## 18 Moquegua 44620 5156
## 19 Pasco 29827 14735
## 20 Piura 248993 112112
## 21 Puno 179108 31263
## 22 San Martín 146903 22696
## 23 Tacna 81354 7107
## 24 Tumbes 31307 19715
## 25 Ucayali 67849 6400
Si lo quisieramos a nivel de provincia:
aggregate(cbind(todaSemana, NoTodaSemana) ~ Provincia,
data = agua, mean) #saca promedio
## Provincia todaSemana NoTodaSemana
## 1 Abancay 3113.2222 287.00000
## 2 Acobamba 913.5000 239.25000
## 3 Acomayo 799.0000 67.42857
## 4 Aija 278.4000 22.20000
## 5 Alto Amazonas 1830.0000 552.66667
## 6 Ambo 1071.7500 305.00000
## 7 Andahuaylas 1653.3500 218.65000
## 8 Angaraes 809.5000 131.08333
## 9 Anta 1226.2222 290.00000
## 10 Antabamba 410.7143 28.71429
## 11 Antonio Raymondi 481.6667 100.16667
## 12 Arequipa 8192.7931 1065.44828
## 13 Ascope 2625.8750 743.75000
## 14 Asunción 954.5000 90.50000
## 15 Atalaya 1123.0000 212.50000
## 16 Ayabaca 1436.7000 216.80000
## 17 Aymaraes 387.4118 44.47059
## 18 Azángaro 928.1333 125.20000
## 19 Bagua 1845.5000 590.16667
## 20 Barranca 6011.0000 996.60000
## 21 Bellavista 829.0000 583.83333
## 22 Bolívar 418.8333 54.83333
## 23 Bolognesi 329.2667 38.86667
## 24 Bongara 478.9167 44.50000
## 25 Cajabamba 3595.5000 589.50000
## 26 Cajamarca 5673.5000 813.83333
## 27 Cajatambo 286.4000 25.20000
## 28 Calca 1651.3750 183.62500
## 29 Callao 31039.8571 2111.14286
## 30 Camaná 1272.2500 526.00000
## 31 Canas 724.5000 63.62500
## 32 Canchis 2787.2500 204.37500
## 33 Candarave 173.0000 18.66667
## 34 Cangallo 1365.1667 117.33333
## 35 Canta 362.0000 82.42857
## 36 Cañete 2444.0625 595.87500
## 37 Carabaya 921.3000 235.40000
## 38 Caravelí 322.3846 271.00000
## 39 Carhuaz 941.4545 97.36364
## 40 Carlos Fermín Fitzcarrald 1176.3333 335.66667
## 41 Casma 2216.2500 545.50000
## 42 Castilla 555.7857 66.57143
## 43 Castrovirreyna 229.0769 19.00000
## 44 Caylloma 897.4000 90.40000
## 45 Celendín 1221.3333 191.75000
## 46 Chachapoyas 545.7143 47.14286
## 47 Chanchamayo 4365.5000 418.33333
## 48 Chepén 5419.6667 482.00000
## 49 Chiclayo 8349.8000 550.45000
## 50 Chincha 2505.4545 1941.18182
## 51 Chincheros 983.1818 142.45455
## 52 Chota 1177.5263 428.26316
## 53 Chucuito 2203.7143 429.85714
## 54 Chumbivilcas 1399.3750 456.25000
## 55 Chupaca 1074.6667 223.11111
## 56 Churcampa 603.0909 91.63636
## 57 Concepción 761.0667 94.13333
## 58 Condesuyos 316.5000 41.62500
## 59 Condorcanqui 893.3333 165.66667
## 60 Contralmirante Villar 191.0000 1301.00000
## 61 Contumazá 618.3750 192.87500
## 62 Coronel Portillo 7910.2857 499.28571
## 63 Corongo 214.8571 16.85714
## 64 Cotabambas 1459.3333 482.66667
## 65 Cusco 10966.8750 1726.00000
## 66 Cutervo 1377.8667 329.26667
## 67 Daniel Alcides Carrión 632.5000 183.25000
## 68 Datem del Marañón 206.6667 30.00000
## 69 Dos de Mayo 660.4444 96.22222
## 70 El Collao 1470.6000 192.40000
## 71 El Dorado 1179.6000 275.80000
## 72 Espinar 1301.6250 214.87500
## 73 Ferreñafe 2760.8333 273.16667
## 74 General Sánchez Cerro 188.5455 36.27273
## 75 Gran Chimú 612.5000 372.50000
## 76 Grau 355.5714 31.57143
## 77 Huacaybamba 687.2500 142.25000
## 78 Hualgayoc 4748.0000 1315.66667
## 79 Huallaga 988.6667 23.16667
## 80 Huamalíes 829.4545 133.18182
## 81 Huamanga 3458.5625 538.93750
## 82 Huanca Sancos 529.5000 103.25000
## 83 Huancabamba 2191.6250 305.50000
## 84 Huancané 1256.6250 271.75000
## 85 Huancavelica 1294.4211 139.47368
## 86 Huancayo 3809.9286 770.96429
## 87 Huanta 1560.9167 227.08333
## 88 Huánuco 3514.6923 645.30769
## 89 Huaral 2724.5000 424.91667
## 90 Huaraz 2931.8333 338.91667
## 91 Huari 733.4375 166.50000
## 92 Huarmey 1190.4000 213.60000
## 93 Huarochirí 339.9062 53.78125
## 94 Huaura 3785.4167 498.25000
## 95 Huaylas 1089.0000 80.00000
## 96 Huaytará 205.0000 36.93750
## 97 Ica 4655.2143 1862.28571
## 98 Ilo 6322.3333 1020.00000
## 99 Islay 2020.6667 276.50000
## 100 Jaén 2911.6667 380.91667
## 101 Jauja 526.0588 84.64706
## 102 Jorge Basadre 721.0000 174.00000
## 103 Julcán 859.0000 502.50000
## 104 Junín 1405.2500 91.75000
## 105 La Convención 1952.0000 159.14286
## 106 La Mar 1375.4545 246.36364
## 107 La Unión 273.7273 15.00000
## 108 Lamas 1255.8182 183.54545
## 109 Lambayeque 3914.5833 704.08333
## 110 Lampa 571.2000 66.50000
## 111 Lauricocha 363.1429 82.57143
## 112 Leoncio Prado 1720.3000 303.10000
## 113 Lima 42826.6279 3522.09302
## 114 Loreto 599.0000 128.40000
## 115 Lucanas 585.2381 60.80952
## 116 Luya 422.7826 72.04348
## 117 Manu 469.0000 305.25000
## 118 Marañón 767.0000 133.00000
## 119 Mariscal Cáceres 2213.8000 208.00000
## 120 Mariscal Luzuriaga 358.1250 71.62500
## 121 Mariscal Nieto 3929.8333 282.83333
## 122 Mariscal Ramón Castilla 377.2500 253.50000
## 123 Maynas 5931.1818 776.27273
## 124 Melgar 1368.8889 155.11111
## 125 Moho 1636.5000 236.00000
## 126 Morropón 2818.4000 621.40000
## 127 Moyobamba 4181.3333 373.50000
## 128 Nasca 2253.0000 350.20000
## 129 Ocros 144.0000 25.80000
## 130 Otuzco 1471.7000 212.30000
## 131 Oxapampa 1401.3750 166.62500
## 132 Oyón 651.3333 48.50000
## 133 Pacasmayo 3660.0000 1306.40000
## 134 Pachitea 1464.0000 254.00000
## 135 Padre Abad 1591.8000 411.00000
## 136 Paita 2657.5714 962.42857
## 137 Pallasca 430.8182 60.63636
## 138 Palpa 420.6000 305.60000
## 139 Parinacochas 638.1250 187.75000
## 140 Paruro 674.3333 112.33333
## 141 Pasco 1042.7692 918.15385
## 142 Pataz 876.4615 228.46154
## 143 Páucar del Sara Sara 266.3000 19.10000
## 144 Paucartambo 1254.8333 169.16667
## 145 Picota 541.5000 276.00000
## 146 Pisco 3211.1250 1371.87500
## 147 Piura 12045.7000 3311.40000
## 148 Pomabamba 1239.2500 249.75000
## 149 Puerto Inca 380.4000 65.20000
## 150 Puno 2507.8667 510.33333
## 151 Purús 26.0000 0.00000
## 152 Putumayo 6.2500 17.00000
## 153 Quispicanchi 1462.0000 204.66667
## 154 Recuay 339.3000 48.10000
## 155 Requena 182.2727 69.63636
## 156 Rioja 2717.3333 373.66667
## 157 Rodríguez de Mendoza 482.5833 74.75000
## 158 San Antonio de Putina 800.0000 175.80000
## 159 San Ignacio 3391.2857 637.28571
## 160 San Marcos 1388.2857 251.85714
## 161 San Martín 2876.4286 289.42857
## 162 San Miguel 769.6923 71.00000
## 163 San Pablo 1114.2500 181.75000
## 164 San Román 8282.0000 1055.20000
## 165 Sánchez Carrión 2221.2500 1115.50000
## 166 Sandia 618.9000 175.10000
## 167 Santa 9489.0000 989.11111
## 168 Santa Cruz 619.5455 149.09091
## 169 Santiago de Chuco 869.7500 388.12500
## 170 Satipo 2358.1111 320.44444
## 171 Sechura 690.0000 1953.66667
## 172 Sihuas 534.8000 80.60000
## 173 Sucre 225.8182 32.45455
## 174 Sullana 4641.2500 3213.25000
## 175 Tacna 6981.2727 568.36364
## 176 Tahuamanu 518.6667 130.00000
## 177 Talara 1429.8333 4001.16667
## 178 Tambopata 5915.5000 308.50000
## 179 Tarata 169.8750 27.62500
## 180 Tarma 2001.3333 270.55556
## 181 Tayacaja 806.9048 131.71429
## 182 Tocache 1997.4000 440.00000
## 183 Trujillo 15984.6364 2923.81818
## 184 Tumbes 4099.0000 1850.83333
## 185 Ucayali 545.8333 311.50000
## 186 Urubamba 1673.1429 363.71429
## 187 Utcubamba 1994.5714 1545.42857
## 188 Víctor Fajardo 459.8333 75.08333
## 189 Vilcas Huamán 527.7500 126.75000
## 190 Virú 3855.0000 2172.33333
## 191 Yarowilca 391.1250 59.87500
## 192 Yauli 830.1000 108.70000
## 193 Yauyos 131.2424 14.87879
## 194 Yungay 1421.1250 107.00000
## 195 Yunguyo 1335.1429 331.42857
## 196 Zarumilla 1535.0000 1176.75000