🌐 Functions related to the calculation of distance between geographic points and data partitioning in sliding windows.

Libraries 📚

Function sliding_window 🔁

This feature allows you to apply a monthly moving sliding window transformation on a data set. The number of folds and the types of variables to be calculated are defined. For a detailed explanation and use case of this function with R code, see Crime occurrence prediction / sliding_window.

pliegues = 1:13
names(pliegues) = pliegues

variables = c("delitos", "temperatura", "mm_agua", "lluvia", "viento")
names(variables) = variables

data_longer_crime %>% head()
#> # A tibble: 6 x 166
#>   esquina       long   lat delitos_dec_2017 delitos_jan_2018 delitos_feb_2018
#>   <chr>        <dbl> <dbl>            <int>            <int>            <int>
#> 1 esquina_1    -58.5 -34.5                1                8                3
#> 2 esquina_10   -58.4 -34.6                5               11                7
#> 3 esquina_100  -58.5 -34.6                4                1                2
#> 4 esquina_1001 -58.5 -34.6                0                1                1
#> 5 esquina_1002 -58.5 -34.6                0                2                2
#> 6 esquina_1003 -58.5 -34.6                1                0                1
#> # … with 160 more variables: delitos_mar_2018 <int>, delitos_apr_2018 <int>,
#> #   delitos_may_2018 <int>, delitos_jun_2018 <int>, delitos_jul_2018 <int>,
#> #   delitos_aug_2018 <int>, delitos_sep_2018 <int>, delitos_oct_2018 <int>,
#> #   delitos_nov_2018 <int>, delitos_dec_2018 <int>, delitos_jan_2019 <int>,
#> #   delitos_feb_2019 <int>, delitos_mar_2019 <int>, delitos_apr_2019 <int>,
#> #   delitos_may_2019 <int>, delitos_jun_2019 <int>, delitos_jul_2019 <int>,
#> #   delitos_aug_2019 <int>, delitos_sep_2019 <int>, delitos_oct_2019 <int>,
#> #   delitos_nov_2019 <int>, delitos_dec_2019 <int>, temperatura_dec_2017 <dbl>,
#> #   temperatura_jan_2018 <dbl>, temperatura_feb_2018 <dbl>,
#> #   temperatura_mar_2018 <dbl>, temperatura_apr_2018 <dbl>,
#> #   temperatura_may_2018 <dbl>, temperatura_jun_2018 <dbl>,
#> #   temperatura_jul_2018 <dbl>, temperatura_aug_2018 <dbl>,
#> #   temperatura_sep_2018 <dbl>, temperatura_oct_2018 <dbl>,
#> #   temperatura_nov_2018 <dbl>, temperatura_dec_2018 <dbl>,
#> #   temperatura_jan_2019 <dbl>, temperatura_feb_2019 <dbl>,
#> #   temperatura_mar_2019 <dbl>, temperatura_apr_2019 <dbl>,
#> #   temperatura_may_2019 <dbl>, temperatura_jun_2019 <dbl>,
#> #   temperatura_jul_2019 <dbl>, temperatura_aug_2019 <dbl>,
#> #   temperatura_sep_2019 <dbl>, temperatura_oct_2019 <dbl>,
#> #   temperatura_nov_2019 <dbl>, temperatura_dec_2019 <dbl>,
#> #   mm_agua_dec_2017 <dbl>, mm_agua_jan_2018 <dbl>, mm_agua_feb_2018 <dbl>,
#> #   mm_agua_mar_2018 <dbl>, mm_agua_apr_2018 <dbl>, mm_agua_may_2018 <dbl>,
#> #   mm_agua_jun_2018 <dbl>, mm_agua_jul_2018 <dbl>, mm_agua_aug_2018 <dbl>,
#> #   mm_agua_sep_2018 <dbl>, mm_agua_oct_2018 <dbl>, mm_agua_nov_2018 <dbl>,
#> #   mm_agua_dec_2018 <dbl>, mm_agua_jan_2019 <dbl>, mm_agua_feb_2019 <dbl>,
#> #   mm_agua_mar_2019 <dbl>, mm_agua_apr_2019 <dbl>, mm_agua_may_2019 <dbl>,
#> #   mm_agua_jun_2019 <dbl>, mm_agua_jul_2019 <dbl>, mm_agua_aug_2019 <dbl>,
#> #   mm_agua_sep_2019 <dbl>, mm_agua_oct_2019 <dbl>, mm_agua_nov_2019 <dbl>,
#> #   mm_agua_dec_2019 <dbl>, dias_lluvia_dec_2017 <dbl>,
#> #   dias_lluvia_jan_2018 <dbl>, dias_lluvia_feb_2018 <dbl>,
#> #   dias_lluvia_mar_2018 <dbl>, dias_lluvia_apr_2018 <dbl>,
#> #   dias_lluvia_may_2018 <dbl>, dias_lluvia_jun_2018 <dbl>,
#> #   dias_lluvia_jul_2018 <dbl>, dias_lluvia_aug_2018 <dbl>,
#> #   dias_lluvia_sep_2018 <dbl>, dias_lluvia_oct_2018 <dbl>,
#> #   dias_lluvia_nov_2018 <dbl>, dias_lluvia_dec_2018 <dbl>,
#> #   dias_lluvia_jan_2019 <dbl>, dias_lluvia_feb_2019 <dbl>,
#> #   dias_lluvia_mar_2019 <dbl>, dias_lluvia_apr_2019 <dbl>,
#> #   dias_lluvia_may_2019 <dbl>, dias_lluvia_jun_2019 <dbl>,
#> #   dias_lluvia_jul_2019 <dbl>, dias_lluvia_aug_2019 <dbl>,
#> #   dias_lluvia_sep_2019 <dbl>, dias_lluvia_oct_2019 <dbl>,
#> #   dias_lluvia_nov_2019 <dbl>, dias_lluvia_dec_2019 <dbl>,
#> #   veloc_viento_dec_2017 <dbl>, veloc_viento_jan_2018 <dbl>,
#> #   veloc_viento_feb_2018 <dbl>, …
sliding_window(data = data_longer_crime %>% dplyr::select(-c(long,lat)),
               inicio = 13,
               pliegues = pliegues,
               variables = variables)
#> # A tibble: 26,299 x 32
#>    id     pliegue delitos_last_ye… delitos_last_12 delitos_last_6 delitos_last_3
#>    <chr>    <int>            <dbl>           <dbl>          <dbl>          <dbl>
#>  1 esqui…       1                1              73             41             20
#>  2 esqui…       1                5             106             47             19
#>  3 esqui…       1                4              25             11              4
#>  4 esqui…       1                0               4              1              1
#>  5 esqui…       1                0              31             16              7
#>  6 esqui…       1                1              11              6              3
#>  7 esqui…       1                1              16             11              4
#>  8 esqui…       1                1              19              8              5
#>  9 esqui…       1                0               9              6              4
#> 10 esqui…       1                3              27             14             10
#> # … with 26,289 more rows, and 26 more variables: delitos_last_1 <dbl>,
#> #   delitos <dbl>, temperatura_last_year <dbl>, temperatura_last_12 <dbl>,
#> #   temperatura_last_6 <dbl>, temperatura_last_3 <dbl>,
#> #   temperatura_last_1 <dbl>, temperatura <dbl>, mm_last_year <dbl>,
#> #   mm_last_12 <dbl>, mm_last_6 <dbl>, mm_last_3 <dbl>, mm_last_1 <dbl>,
#> #   mm <dbl>, dias_last_year <dbl>, dias_last_12 <dbl>, dias_last_6 <dbl>,
#> #   dias_last_3 <dbl>, dias_last_1 <dbl>, dias <dbl>, veloc_last_year <dbl>,
#> #   veloc_last_12 <dbl>, veloc_last_6 <dbl>, veloc_last_3 <dbl>,
#> #   veloc_last_1 <dbl>, veloc <dbl>

To consult projects where this functions was used, visit: