#' Function to count missing data in input dataset
#'
#' Function that returns information bout missing values,
#' characters that have 0 length as well as number of
#' unique values and numer of observations
#'
#' @name check_miss
#' @param data inputdataset.
#' @param ... arguments passing variabele names to dplyr.
#' @return data.frame with number of NA (N_miss), number of 0 length characters (N_0_char), number of unique values (N_unique) and number of observations (N).
#' @examples
#' check_miss(mtcars)
check_miss <- function(data,...) {
p <- match.call(expand.dots=FALSE)
if (length(p) <= 2) {
tab <- data %>%
summarise_each(funs(.na_sum,
.nchar_sum,
.n_unique,
n())) %>%
matrix(ncol=4,
dimnames=list(
names(data),
c('N_miss','N_0_char','N_unique','N')
)) %>%
as.data.frame()
} else {
v_name <- data %>%
select(...) %>%
names()
tab <- data %>%
select(...) %>%
summarise_each(funs(.na_sum,
.nchar_sum,
.n_unique,
n())) %>%
matrix(ncol=4,
dimnames=list(
v_name,
c('N_miss','N_0_char','N_unique','N')
)) %>%
as.data.frame()
}
return(tab)
}
.na_sum <- function(x) {
return(sum(is.na(x)))
}
.nchar_sum <- function(x) {
return(sum(str_length(x)==0))
}
.n_unique <- function(x) {
return(length(unique(x)))
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.