Learn R Programming

driftR (version 1.1.0)

dr_replace: Replacing problematic observations from the monitoring period

Description

dr_replace() includes two approaches for identifying problematic observations for specific measurements that should be recoded as missing values (NA).

Usage

dr_replace(.data, sourceVar, cleanVar = NULL, overwrite = FALSE, dateVar = NULL,
    timeVar = NULL, from = NULL, to = NULL, tz = NULL, exp)

Arguments

.data

A tbl

sourceVar

Name of variable to replace missing values in

cleanVar

New variable name for cleaned data

overwrite

A logical scalar. Should the current variable be overwritten instead of creating a new variable?

dateVar

Name of variable containing date data

timeVar

Name of variable containing time data

from

Beginning date and (optionally) time to remove observations

to

End date and (optionally) time to remove observations

tz

String name of timezone, defaults to system's timezone

exp

Unquoted expression

Value

An object of the same class as .data with specified observations recoded as missing.

Details

During monitoring, a sensor malfunction may impact only a single element of a given reading. Removing the entire observation may therefore be imprudent. dr_replace() provides two methods for identifying these values and declaring them as missing. Values can be identified by specifying one or two timepoints in the data where problematic measurements begin, end, or fall between. Values can also be identified based on a problematic sensor value or range of values using an expression.

Examples

Run this code
# NOT RUN {
testData <- data.frame(
   Date = c("9/18/2015", "9/18/2015", "9/18/2015", "9/18/2015", "9/19/2015", "9/21/2015"),
   Time = c("12:10:49", "12:15:50", "12:20:51", "12:25:51", "12:30:51", "12:35:51"),
   Temp = c(14.76, 14.64, 14.57, 14.51, 14.50, 14.63),
   SpCond = c(0.754, 0.750, 0.750, 0.749, 0.749, 0.749),
   stringsAsFactors = FALSE
 )

 dr_replace(testData, sourceVar = Temp, dateVar = Date, timeVar = Time,
     from = "2015-09-19 12:30:51", to = "2015-09-21 12:35:51")
 dr_replace(testData, sourceVar = Temp, dateVar = Date, timeVar = Time,
     from = "2015-09-19", to = "2015-09-21")
 dr_replace(testData, sourceVar = Temp, dateVar = Date, timeVar = Time, from = "2015-09-19")
 dr_replace(testData, sourceVar = Temp, dateVar = Date, timeVar = Time, to = "2015-09-19")
 dr_replace(testData, sourceVar = Temp, cleanVar = temp2, dateVar = Date, timeVar = Time,
     to = "09/19/2015 12:35:51")
 dr_replace(testData, sourceVar = Temp, overwrite = TRUE, exp = Temp > 14.75)

# }

Run the code above in your browser using DataLab