##' Function to remove non-existing record
##'
##' Sometimes non-existing records (observation status flag and method flag and
##' value all NA) are returned by the database, or can be created by
##' denormalising the data. This function removes these records.
##'
##' @param data The data containing non-existing record
##' @param areaVar The column name corresponding to the geographic
##' area.
##' @param itemVar The column name corresponding to the commodity
##' item.
##' @param elementVar The column name corresponding to the measured
##' element.
##' @param yearVar The column name corresponding to the year.
##' @param flagObsVar The column name corresponding to the observation
##' status flag.
##' @param flagMethodVar The column name corresponding to the method
##' flag.
##' @param valueVar The column name corresponding to the value.
##'
##' @return Data with non-existing records omitted.
##'
##' @export
##'
removeNonExistingRecord = function(data,
areaVar = "geographicAreaM49",
itemVar = "measuredItemCPC",
elementVar = "measuredElement",
yearVar = "timePointYears",
flagObsVar = "flagObservationStatus",
flagMethodVar = "flagMethod",
valueVar = "Value"){
dataCopy = copy(data)
requiredColumn = c(areaVar, itemVar, elementVar, yearVar,
flagObsVar, flagMethodVar, valueVar)
if(!all(requiredColumn %in% colnames(dataCopy)))
stop("Required column not in data, data has to be normalised!")
dataCopy[!is.na(dataCopy[[flagObsVar]]) & !is.na(dataCopy[[flagMethodVar]]), ]
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.