Skip to contents

Electrical Penetration Graph (EPG) is a technique used to monitor insect feeding behavior. Studying voltage waveforms in EPG data allows one to analyze the insect-host relationship and gain insights into what makes a suitable host.

To facilitate the analysis of EPG data, EPGminer contains various functions for working with voltage time series data as well as ANA annotation files from manual annotation software.

The primary utility of using EPGminer for analysis is the ability to calculate Frequency and Relative Amplitude. Frequency is calculated using the Fourier Transform to extract the main constituent frequencies in each waveform. Relative amplitude is a measure of the voltage amplitude for each waveform.

Another aspect of EPGminer is data visualization via plots. The plotting functions are all in the format plot_x where x denotes the type of plot. The types of plots currently supported are: voltage time series, labeled time-series, Fourier transformed data, frequency boxplot, and two types of pie charts.

An accompanying Shiny app, available as both a web version (https://epgdata.shinyapps.io/epgminer_app/) and locally through R, includes a streamlined version of the package functionality focusing on the main calculations and visuals.

To cite (with DOI) please use:

Elizabeth Chun. (2022). LylChun/EPGminer: EPGminer (v1.0.0). Zenodo. DOI

System requirements

Hardware

EPGminer can be run on any standard computer with enough memory to perform the necessary operations. It was primarily tested on a computer with 8 GB of RAM which is amply sufficient.

Software

OS

The package was developed and primarily tested on Windows 10 Version 20H2. It has also been tested on macOS Monterey Version 12.1.

Dependencies

This R package was developed using R version 4.1.0. It depends on R (>=4.0.0) as well as specific package Imports listed in the DESCRIPTION file.

EPGminer Application

A streamlined version of EPGminer is available as a Shiny application. The EPGminer App web version may be launched via the user’s web browser with no installation or other software dependencies required. The app has been tested in the following browsers:

Chrome Version 99.0.4844.51
Edge Version 99.0.1150.39
Safari Version 15.2

Note that due to server limitations, the web version is limited in memory and should not be used for datasets that exceed 100mb at most.

The EPGminer app local version must be installed with the R package itself and System Requirements are as noted above.

Installation guide

To use the EPGminer package, users must have R installed on their computer. This may be accomplished by going to https://cran.r-project.org/, downloading, and installing the appropriate version of R for the given operating system. Installation of R should take around 1 minute.

Once R has been properly installed, the EPGminer package may be installed from GitHub as follows.

Install from GitHub

The EPGminer package can be installed from GitHub using devtools via the following code in R. Installation should take around 30 seconds. To install the package without vignettes, set build_vignettes = FALSE (install time will be faster, however this means the vignettes referenced in “Demo” and “Instructions for use” will not be installed).

if (!require(devtools)){
  install.packages("devtools")
}
devtools::install_github("LylChun/EPGminer", build_vignettes = TRUE)

Demo

For a demo of EPGminer with instructions, expected output, and expected run time, please see the “EPGminerDemo” vignette which can be found on the package website here

The vignette may also be accessed in R via:

vignette("EPGminerDemo")

Note that due to the size of EPG datasets, the data is included in a separate R package called epgdata which can be found here

Instructions for use

Use of the software for EPG data analysis involves data reading/processing, labeling, and calculation of metrics. For an example script showing how we used EPGminer on our data, please see the “EPGminerReprex” vignette here or via R:

vignette("EPGminerReprex")