R/wavelet-ecg-filters.R

# Teresa updated March 29th 2018

#' @importFrom assertthat assert_that
#' @importFrom magrittr %>%
#'
library("magrittr")
library("assertthat")

baseline_wander_remove <- function(signal, fs) {

  nyq <- fs / 2
  lower_limit <- 3 / nyq
  higher_limit <- 40 / nyq
  filter_order <- 1

  frequency_cutoff <-
    signal::butter(filter_order, c(lower_limit, higher_limit), type = "pass")

  filteredECG <-
    signal::filtfilt(frequency_cutoff, signal)
}

ecg_low_pass <- function(signal, fs) {
  # Nyquist Frequency which is the half of the sampling frequency
  nyq <- fs / 2
  lower_limit <- 40 / nyq
  filter_order <- 5

  frequency_cutoff <-
    signal::butter(filter_order, lower_limit, type = "low")

  filteredECG <-
    signal::filtfilt(frequency_cutoff, signal)
}
Teresa00/hfmAnnotation documentation built on May 14, 2019, 12:51 a.m.