Nothing
## to do:
# level input need and run level check first but the formatted input is need to check level....FIX
#' Format vector for industry codes
#' @param x - vector of character
#' @param classification - classification number
#' @return vector of character
#' @keywords internal
formattering <- function(x, classification) {
# Check for missing values
miss <- sum(is.na(x) | x == "")
if (miss != 0) {
warning(c("Number of NA: ", miss))
}
# Check and format
if (classification == 6) {
x_formatted <- formattering_nace(x)
}
if (classification == 131) {
x_formatted <- formattering_kommune(x)
}
x_formatted
}
#' Format vector for industry codes
#' @param x Character vector
#' @return Formatted charcter vector
#' @keywords internal
formattering_nace <- function(x) {
# Specify position of the .
dot <- 3
# Identify number missing punctuation
x_nopunc <- tm::removePunctuation(x)
x_over2 <- nchar(x_nopunc) >= 3
x_over2[is.na(x_over2)] <- FALSE
mangler_dot <- sum(!grepl("\\.", x[x_over2]))
if (mangler_dot != 0) {
warning(c("Number missing .: ", mangler_dot))
}
mangler_dot <- length(x) - sum(grepl("\\.", x))
# Format
x_formatted <- sub(paste0("(?<=.{", dot - 1, "})"), ".", x_nopunc, perl = TRUE)
x_formatted[!x_over2] <- x_nopunc[!x_over2]
x_formatted
}
#' Format vector for kommune codes
#' @param x - vector of character type for kommune codes
#' @return vector of character
#' @keywords internal
formattering_kommune <- function(x) {
# Check for letters
if (any(grepl("^[A-Za-z]+$", x))) {
stop("Letters detected in kommune codes. Please check and rerun.")
}
# Find dropped leading zeros
mangler0 <- sum(nchar(x) < 4, na.rm = T)
# Fix if any
if (mangler0 > 0) {
x_formatted <- formatC(as.numeric(x), width = 4, flag = "0")
warning(c("Number missing leading 0: ", mangler0))
} else {
x_formatted <- x
}
x_formatted
}
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.