#' subsetting ksic sub code
#' @export
ksic_sub <- function(ksic, digit=5, C=10){
p_d <- as.numeric(digit)
p_C <- as.numeric(C)
if(!p_d %in% c(1:5)){
stop("digit이 잘못 입력되었습니다.")
} else if(!p_C %in% c(9,10)){
stop("차수가 잘못 입력되었습니다.")
} else if(nchar(ksic)>=p_d){
stop("ksic의 digit이 digit과 같거나 더 큽니다.")
} else if(!ksic %in% ksicDB[ksicDB$ksic_C==paste0("C",p_C),]$ksic_cd){
stop(paste0("ksic가 ",C,"차에 없습니다."))
} else{
SubDB <- ksicSubDB[ksicSubDB$ksic_C==paste0("C",p_C),]
if(digit == 2){
z <- SubDB
} else if(digit==3){
z <- tidyr::unnest(SubDB, 'd2')
} else if(digit==4){
z <- tidyr::unnest(SubDB, 'd2')
z <- tidyr::unnest(z, 'd3')
} else if(digit==5){
z <- tidyr::unnest(SubDB, 'd2')
z <- tidyr::unnest(z, 'd3')
z <- tidyr::unnest(z, 'd4')
}
z <- z[z[paste0("d",nchar(ksic),"_cd")]== ksic,]
z <- z[,paste0("d",as.character(p_d))]
names(z) <- "d"
z <- tidyr::unnest(z, 'd')
z1 <- z[,paste0("d",as.character(p_d),"_cd")]
z2 <- z[,paste0("d",as.character(p_d),"_nm")]
z <- cbind(paste0("C",p_C),z1,z2)
names(z) <- c("ksic_C","ksic_cd", "ksic_nm")
return(z)
}
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.