Cargamos las librerías a usar

library(ggmap)
library(ggplot2)
library(readxl)
library(stringr)
library(foreign)
library(tidyverse)
library(ggmap)

Para georreferencias las ubicaciones, i.e. generar la ubicación en latitud y longitud, debemos registrarnos con una cuenta propia de Google Cloud Platform. Este servicio permite acceder a las plataformas de google map entre otros como desarrolladores, por lo que el servicio es de pago y el usuario es personal.

register_google(key = "ABCDEFGHEGVB")

Luego de registrarnos con la cuenta, cargamos la base de datos a analizar. En este caso, cargamos la muestra de datos de empresas.

library(knitr)
dir = 'F:/proyectos/patente'
bod <- read_excel(paste(dir,"/BoD.xlsx", sep = "",collapse = NULL))
kable(bod, caption ="Muestra de datos" )
Muestra de datos
n persona_natural persona_juridica year categoria_general sub_categoria especifica direccion ccdi ccpp ccdd coment note
1 Aspillaga Anderson, Hermanos S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Chumbenique, La Otra Banda Cayalti Chiclayo Lambayeque Produccion de Azucar, cuenta con oficina en Lima 2
2 NA Santiago Casinelli 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Plaza Union 111 NA Chiclayo Lambayeque Molino de Arroz 3
3 Compañía Agraria San Jose y San Regis Ltda. NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Jr. Azangaro 377 Lima Lima Lima NA 1
4 Desmotadora H. Oliva S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Acomayo 225 NA Ica Ica Algodón 1
5 Desmotadora Santa Teresita S.A. NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Fabrica en Chincha Chincha Chincha Ica Algodón/ cuenta con oficina en Lima 2
6 NA Enrique Echecopar Herce 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Jr. Carabaya 515 Lima Lima Lima Productor de Arroz 1
7 Fabricas Unidas S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Av Argentina 982-990 Lima Lima Lima Algodón 1
8 Ganaderia Industrial Andina S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Fundo San Julian y Vista Alegre Colcabamba Tayacaja Huancavelica Siembra de papas, cebada y crianza de chanchos 2
9 Hacienda San Jacinto Cía. Ltda NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Hcda San Jacinto /Paita Paita Paita Piura Produccion de Algodón, Semilla y Arroz 2
10 La Distribuidora de Productos S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Jr Ucayali 161 Lima Lima Lima NA 1
11 NA Felix Lentz 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Av 28 de Julio 1824 Lima Lima Lima Purificacion de Semillas 1
12 NA Manuel Mujica Carassa 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Jr de la Union 1058 Lima Lima Lima NA 1
13 Reprensa Algodonera y Almacen Nacional S.A Ransa NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Jirón Cuzco 245 Lima Lima Lima NA 1
14 Roy, Tori & Cía., S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Grau 548 Chincha Alta Chincha Ica Algodón 1
15 Sociedad Desmotadora e Industrial de Huaral NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Huaral Chancay Chancay Huaral Lima Algodón y Aceites 2
16 NA Sucesion Silvio Liceti 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Av Mariscal Castilla 260 Huacho Huacho Huaura Lima Desmotadora de Algodón 1
17 Teado y Co., S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Chanchamayo NA Chanchamayo Junin Café, Cañas y Frutas 2
18 Viuda de Piedra e Hijos S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Agricultura y Ganaderia Agricultura Elias Aguirre 112 NA Chiclayo Lambayeque Molino de Arroz, cuenta con oficina en Lima 1
19 Aserradero Callao S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Silvicultura, Tala y Corta de Arboles Produccion de Madera San Alejandro-Pucallpa San Irazola Padre Abad Ucayalli Madedera 2
20 Aserradero Funegra NA 1954 Agricultura, Ganaderia, Caza y Pesca Silvicultura, Tala y Corta de Arboles Produccion de Madera Carretera Huanuco-Pucallpa Pucallpa Coronel Portillo Ucayalli NA 2
21 Compañía Madedera Gibson S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Silvicultura, Tala y Corta de Arboles Produccion de Madera Av Parra 208 Arequipa Arequipa Arequipa NA 2
22 Compañía Madedera Tulumayo S.A NA 1954 Agricultura, Ganaderia, Caza y Pesca Silvicultura, Tala y Corta de Arboles Produccion de Madera Tingo Maria Rupa Rupa Leoncio Prado Huanuco Extraccion de Maderas 2
23 Aserradero LAK (Erick Luis Koechlin) NA 1954 Agricultura, Ganaderia, Caza y Pesca Silvicultura, Tala y Corta de Arboles Produccion de Madera Av Colonial 700 Lima Lima Lima NA 1
24 Lanfranco & Cía NA 1954 Agricultura, Ganaderia, Caza y Pesca Silvicultura, Tala y Corta de Arboles Produccion de Madera Av Mexico 280 La Victoria Lima Lima NA 1
25 Negociacion Pucallpa NA 1954 Agricultura, Ganaderia, Caza y Pesca Silvicultura, Tala y Corta de Arboles Produccion de Madera Jr Canta 221 La Victoria Lima Lima Extraccion y Aserrio de Madera 1
26 Sociedad Industrial de Huancaya Ltda. NA 1954 Agricultura, Ganaderia, Caza y Pesca Silvicultura, Tala y Corta de Arboles Produccion de Madera Av Amazonas 595 Huancayo Huancayo Junin Cuenta con oficina en Lima 1

La variables note indica si la característica de la ubicación. Toma el valor de 1 si la observación tiene una dirección identificable, 2 si la ubicación no tiene una dirección específica sino es puede ser identificable como parte de un distrito o zona mayor; y, 3 si la observación tiene dirección pero ya no existe. A partir de la dirección, el distrito, la provincia y el departamento se genera una nueva variable

address <- paste(bod$direccion, bod$ccdi, bod$ccpp, bod$ccdd, sep= " ", collapse=NULL)[which(bod$note == "1")]

A partir de esta nueva variable asignamos la longitud y latitud de la ubicación con el comando geocode

Las georreferencias de las observaciones son las siguiente:

geo <- NULL
for (i in address){
  print(i)
  C_1 <- geocode(i,source = "google", override_limit = FALSE)
  print(C_1)
  geo <- rbind(geo,cbind(i,C_1))
}
locations <- as_tibble(geo)
kable(locations, caption ="Dirección y ubicación" )

Para ver los datos en el mapa es necesario generar un mapa de Lima de manera previa. Para eso, ubicamos el longitud y latitud de Lima y luego generamos el mapa.

locations <- as_tibble(geo)
geocode("Lima")
## # A tibble: 1 x 2
##     lon   lat
##   <dbl> <dbl>
## 1 -77.0 -12.0
map_lima <- get_googlemap(center = c(-77.04, -12.06), zoom = 14)
ggmap(map_lima)

ggmap(map_lima) +
  geom_point(data = locations, aes(x = lon, y = lat))