evprof1.1.2 package

Electric Vehicle Charging Sessions Profiling and Modelling

get_connection_model_mclust_object

Perform mclust::Mclust clustering for multivariate GMM

get_connection_model_params

Extract models parameters from mclust object

choose_k_GMM

Visualize BIC indicator to choose the number of clusters

cluster_sessions

Cluster sessions with mclust package

convert_time_dt_to_plot_dt

Modify datetime values according evprof.start.hour

convert_time_dt_to_plot_num

Convert datetime values to sorted numeric values considering a start t...

convert_time_num_to_chr

Convert numeric time value (hour-based) to character hour in %H:%M for...

convert_time_num_to_period

Convert numeric time value to a datetime period (hour-based)

cut_sessions

Cut outliers based on minimum and maximum limits of ConnectionHours an...

define_clusters

Define each cluster with a user profile interpretation

detect_outliers

Detect outliers

divide_by_disconnection

Divide sessions by disconnection day

divide_by_timecycle

Divide sessions by time-cycle

drop_outliers

Drop outliers

get_charging_rates_distribution

Get charging rates distribution in percentages

get_connection_models

Get a tibble of connection GMM for every user profile

get_daily_avg_n_sessions

Get the daily average number of sessions given a range of years, month...

get_daily_n_sessions

Get daily number of sessions given a range of years, months and weekda...

get_dbscan_params

Get the minPts and eps values for DBSCAN to label only a specific perc...

get_division_line

ggplot2 type function to plot a division line

get_energy_model_mclust_object

Get Mclust object of univariate Gaussian Mixture Models

get_energy_model_parameters

Get energy univariate Gaussian Mixture Model

get_energy_models

Get a tibble of energy GMM for every user profile

get_ev_model

Get the EV model object of class evmodel

mutate_to_log

Logarithmic transformation to ConnectionStartDateTime and ConnectionHo...

plot_bivarGMM

Plot Bivariate Gaussian Mixture Models

plot_density_2D

Density plot in 2D, considering Start time and Connection duration as ...

plot_density_3D

Density plot in 3D, considering Start time and Connection duration as ...

plot_division_lines

Iteration over evprof::plot_division_line function to plot multiple li...

plot_energy_models

Compare density of estimated energy with density of real energy vector

plot_histogram

Histogram of a variable from sessions data set

plot_histogram_grid

Grid of multiple variable histograms

plot_kNNdist

Plot kNNdist

plot_model_clusters

Plot all bi-variable GMM (clusters) with the colors corresponding to t...

plot_outliers

Plot outlying sessions

plot_points

Scatter plot of sessions

print.evmodel

print method for evmodel object class

read_ev_model

Read an EV model JSON file and convert it to object of class evmodel

round_to_half

Round numeric time value to half hour basis.

round_to_interval

Round to nearest interval

save_clustering_iterations

Save iteration plots in PDF file

save_ev_model

Save the EV model object of class evmodel to a JSON file

set_profiles

Classify sessions into user profiles

summarise_sessions

Statistic summary of sessions features

Tools for modelling electric vehicle charging sessions into generic groups with similar connection patterns called "user profiles", using Gaussian Mixture Models clustering. The clustering and profiling methodology is described in Cañigueral and Meléndez (2021, ISBN:0142-0615) <doi:10.1016/j.ijepes.2021.107195>.

  • Maintainer: Marc Cañigueral
  • License: GPL-3
  • Last published: 2024-03-14