Learn R Programming

⚠️There's a newer version (5.3.1) of this package.Take me there.

lares

R Package for Analytics and Machine Learning

R package built to automate, improve, and speed everyday Analysis and Machine Learning tasks. With a wide variety of family functions like Machine Learning, data cleaning and processing, EDA, Investment, NLP, Queries, Scrappers, API interactions, lares helps the analyst or data scientist get quick, reproducible, robust results, without the need of repetitive coding nor extensive programming skills. Feel free to install, use, and/or comment on any of the code and functionalities. And if you are also colourblind, be sure to check the colour palettes!

Don't hesitate to contact me, and please when you do, let me know where did you first hear from the library and which family of functions you are most interested in.

Installation

## CRAN VERSION
install.packages("lares")

## DEV VERSION
# If you don't have remotes yet, run: install.packages('remotes')
remotes::install_github("laresbernardo/lares")
# Full installation with recommended dependencies (takes more time)
remotes::install_github("laresbernardo/lares", dependencies = TRUE)

Windows users: you MAY have to install RTools before installing the dev version. Download it here.

See the library in action!

AutoML Simplified Map h2o_automl()

Insights While Understanding

To get insights and value out of your dataset, first you need to understand its structure, types of data, empty values, interactions between variables... corr_cross() and freqs() are here to give you just that! They show a wide perspective of your dataset content, correlations, and frequencies. Additionally, with the missingness() function to detect all missing values and df_str() to break down you data frame's structure, you will be ready to squeeze valuable insights out of your data. If you'd like to go deeper, try the x2y(), lasso_vars() and tree_var() to use Machine Learning to detect patterns, predictive powers, and variables importance.

Kings of Data Mining

My favourite and most used functions are freqs(), distr(), and corr_var(). In this RMarkdown you can see them in action. Basically, they group and count values within variables, show distributions of one variable vs another one (numerical or categorical), and calculate/plot correlations of one variables vs all others, no matter what type of data you insert.

If there is space for one more, I would add ohse() (One Hot Smart Encoding), which has made my life much easier and my work much valuable. It converts a whole data frame into numerical values by making dummy variables (categoricals turned into new columns with 1s and 0s, ordered by frequencies and grouping less frequent into a single column) and dates into new features (such as month, year, week of the year, minutes if time is present, holidays given a country, currency exchange rates, etc).

What else is there?

You can check all active functions and documentations here or type lares:: in RStudio and you will get a pop-up with all the functions that are currently available within the package. You might also want to check the whole documentation by running help(package = "lares") in your RStudio or in the Online Official Documentation. Remember to check the families and similar functions on the See Also sections as well.

Getting further help

If you need help with any of the functions when using RStudio, use the ? function (i.e. ?lares::function) and the Help tab will display a short explanation on each function and its parameters. You might also be interested in the online documentation to check all functions and parameters.

If you encounter a bug, please share with me a reproducible example on Github issues and I'll take care of it. For inquiries, and other matters, you can contact me on LinkedIn anytime!

Copy Link

Version

Install

install.packages('lares')

Monthly Downloads

4,611

Version

5.2.5

License

AGPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Bernardo Lares

Last Published

January 22nd, 2024

Functions in lares (5.2.5)

cache_write

Cache Save and Load (Write and Read)
categ_reducer

Reduce categorical values
bring_api

Get API (JSON) and Transform into data.frame
chr2num

Check character values for date/numeric/logical and change datatype
ci_lower

Lower/Upper Confidence Intervals
ROC

AUC and ROC Curves Data
balance_data

Balance Binary Data by Resampling: Under-Over Sampling
bind_files

Bind Files into Dataframe
autoline

New Line Feed for Long Strings (Wrapper)
check_opts

Validate inputs (attributions, options, ...)
cran_logs

Download and plot daily downloads of CRAN packages
clusterOptimalK

Visualize K-Means Clusters for Several K Methods
clusterVisualK

Visualize K-Means Clusters for Several K
clusterKmeans

Automated K-Means Clustering + PCA/t-SNE
cleanText

Clean text strings automatically
corr_var

Correlation between variable and dataframe
corr

Correlation table
conf_mat

Confussion Matrix
ci_var

Confidence Intervals on Dataframe
corr_cross

Ranked cross-correlation across all variables
daily_stocks

Daily Stocks Dataframe
crosstab

Weighted Cross Tabulation
dalex_local

DALEX Local
date_feats

One Hot Encoding for Date/Time Variables (Dummy Variables)
db_download

Download/Import Dropbox File by File's Name
dalex_variable

DALEX Partial Dependency Plots (PDP)
daily_portfolio

Daily Portfolio Dataframe
dalex_residuals

DALEX Residuals
db_upload

Upload Local Files to Dropbox
date_cuts

Convert Date into Year + Cut
export_results

Export h2o_automl's Results
errors

Calculate Continuous Values Errors
etf_sector

ETF's Sectors Breakdown
dist2d

Distance from specific point to line
dfr

Results for AutoML Predictions
df_str

Dataset columns and rows structure
export_plot

Export ggplot2, gridExtra, or any plot object into rendered file
distr

Compare Variables with their Distributions
dft

Titanic Dataset
fb_accounts

Facebook Ad Accounts
filesGD

Google Drive Files (API v4)
fb_rf

Facebook Reach and Frequency API
fb_creatives

Facebook Creatives API
fb_ads

Facebook Ads API
file_name

Extract file raw name and type from file names
fb_insights

Facebook Insights API
fb_token

Facebook's Long-Life User API Token
fb_report_check

Facebook API Report Status Check
files_functions

List all functions used in R script files by package
fb_process

Paginate and Process Facebook's API Results
removenacols

Remove/Drop Columns in which ALL or SOME values are NAs
font_exists

Check if Font is Installed
freqs_list

Frequencies on Lists and UpSet Plot
freqs_plot

Combined Frequencies Plot for Categorical Features
gain_lift

Cumulative Gain, Lift and Response
formatColoured

Print Coloured Messages
formatHTML

Format a string text as markdown/HTML
freqs_df

Plot for All Frequencies on Dataframe
forecast_arima

ARIMA Forecast
freqs

Frequencies Calculations and Plot
gpt_ask

ChatGPT API Interaction with R
readGS

Google Sheets Reading and Writing (API v4)
gg_fill_customs

Custom fill, colour and text colours for ggplot2
gemini_ask

Gemini API Interaction with R
gtrends_related

Google Trends: Related and Time Plots
get_mp3

Download MP3 from URL
get_tweets

Get Tweets
glued

Interpolate a string [glue wrapper]
get_credentials

Load Credentials from a YML File
get_currency

Download Historical Currency Exchange Rate
grepm

Pattern Matching for Any or All Multiple Matches
h2o_predict_binary

H2O Predict using Binary file
gpt_prompter

Structured Prompt Builder for LLM (ChatGPT)
h2o_automl

Automated H2O's AutoML
h2o_explainer

DALEX Explainer for H2O
h2o_results

Automated H2O's AutoML Results
grepl_letters

Pattern Matching for Letters considering Blanks
h2o_predict_API

H2O Predict using API Service
h2o_predict_model

H2O Predict using H2O Model Object
h2o_predict_MOJO

H2O Predict using MOJO file
impute

Impute Missing Values (using MICE)
holidays

Holidays in your Country
image_metadata

Get Meta Data from Image Files
haveInternet

Internet Connection Check
importxlsx

Import Excel File with All Its Tabs
ip_data

Scrap data based on IP address
h2o_shap

SHAP values for H2O Models
install_recommended

Install/Update Additional Recommended Libraries
is_url

Check if input is_* or are_*
h2o_selectmodel

Select Model from h2o_automl's Leaderboard
lares-exports

Pipe operator
lares_pal

Personal Colours Palette
li_profile

Get My Personal LinkedIn Data
lares_logo

Print lares R library Logo
iter_seeds

Iterate Seeds on AutoML
lasso_vars

Most Relevant Features Using Lasso Regression
json2vector

Convert Python JSON string to R vector (data.frame with 1 row)
lares

Analytics, Data Mining & Machine Learning Sidekick
li_auth

OAuth Linkedin
left

Left or Right N characters of a string
move_files

Move files from A to B
model_metrics

Model Metrics and Performance
model_preprocess

Automate Data Preprocess for Modeling
mail_send

Send Emails with Attachments (POST)
missingness

Calculate and Visualize Missingness
loglossBinary

Logarithmic Loss Function for Binary Models
markdown2df

Convert markdown string tables to data.frame
listfiles

List files in a directory
maze_solve

Maze Solver, inspired by Micromouse competitions
list_cats

List categorical values for data.frame
mplot_density

Density plot for discrete and continuous values
mplot_gain

Cumulative Gain Plot
mplot_cuts

Cuts by quantiles for score plot
mplot_conf

Confussion Matrix Plot
mplot_lineal

Linear Regression Results Plot
mplot_response

Cumulative Response Plot
mplot_metrics

Model Metrics and Performance Plots
mplot_cuts_error

Cuts by quantiles on absolute and percentual errors plot
mplot_full

MPLOTS Score Full Report Plots
mplot_importance

Variables Importances Plot
mplot_roc

ROC Curve Plot
ngrams

Build N-grams and keep most frequent
myip

What's my IP?
mplot_splits

Split and compare quantiles plot
num_abbr

Abbreviate numbers
ohe_commas

One Hot Encoding for a Vector with Comma Separated Values
mplot_topcats

Top Hit Ratios for Multi-Classification Models
msplit

Split a dataframe for training and testing sets
normalize

Normalize Vector
noPlot

Plot Result with Nothing to Plot
outlier_zscore_plot

Outliers: Z-score method plot
outlier_zscore

Outliers: Z-score method
outlier_turkey

Outliers: Tukey’s fences
plot_cats

Plot All Categorical Features (Frequencies)
plot_chord

Chords Plot
ohse

One Hot Smart Encoding (Dummy Variables)
plot_palette

Plot Palette Colours
plot_survey

Visualize Survey Results
plot_nums

Plot All Numerical Features (Boxplots)
plot_df

Plot Summary of Numerical and Categorical Features
plot_timeline

Plot timeline as Gantt Plot
read.file

Read Files Quickly (Auto-detected)
quiet

Quiet prints and verbose noise
quants

Calculate cuts by quantiles
prophesize

Facebook's Prophet Forecast
remove_stopwords

Remove stop-words and patterns from character vector
queryDB

PostgreSQL Queries on Database (Read)
reduce_tsne

Reduce Dimensionality with t-SNE
queryGA

Queries on Google Analytics
reduce_pca

Reduce Dimensionality with PCA
replacefactor

Replace Factor Values
replaceall

Replace Values With
robyn_modelselector

Robyn: Model Selection Viz
scale_x_comma

Axis scales format
scrabble_dictionary

Scrabble: Dictionaries
rtistry_sphere

Generative Art: Sphere XmodY
sentimentBreakdown

Sentiment Breakdown on Text
slackSend

Send Slack Message (Webhook)
robyn_hypsbuilder

Robyn: Generate default hyperparameters
shap_var

SHAP-based dependence plots for categorical/numerical features (PDP)
statusbar

Progressive Status Bar (Loading)
splot_summary

Portfolio Plots: Total Summary
splot_growth

Portfolio Plots: Growth (Cash + Invested)
stocks_file

Get Personal Portfolio's Data
splot_change

Portfolio Plots: Daily Change
splot_etf

Portfolio's Sector Distribution (ETFs)
splot_divs

Portfolio Plots: Dividends per Year and Quarter
splot_types

Portfolio Plots: Types of Stocks
spread_list

Spread list column into new columns
splot_roi

Portfolio Plots: Daily ROI
stocks_obj

Portfolio's Calculations and Plots
theme_lares

Theme for ggplot2 (lares)
sudoku_solver

Solve Sudoku Puzzles
stocks_quote

Download Stocks Historical and Current Values
tic

Stopwatch to measure timings in R
textTokenizer

Tokenize Vectors into Words
target_set

Set Target Value in Target Variable
stocks_report

Portfolio's Full Report and Email
textFeats

Create features out of text
textCloud

Wordcloud Plot
what_size

Calculate the size of any R object or directory
topics_rake

Keyword/Topic identification using RAKE
tree_var

Recursive Partitioning and Regression Trees
warnifnot

Test the Truth of R Expressions and Warn
winsorize

Outliers: Winsorize
updateLares

Update the library (dev or CRAN version)
vector2text

Convert a vector into a comma separated text
trim_mp3

Trim MP3 Audio File
try_require

Check if Specific Package is Installed
weighted_value

Calculate weighted stock values using FIFO/LIFO
x2y

Ranked Predictive Power of Cross-Features (x2y)
zerovar

Zero Variance Columns
year_month

Convert Date into Year-Month, Year-Quarter or Year-Week Format
wordle_check

Wordle Game Validation