한글 11,172 글자

한글날 하루 지나는 시점에 글을 올린다.

 

세종계획 코퍼스로 간단한 분석을 해봤는데, 현대 문어를 기준으로 전체 문자에서 고작 2,236자 정도를 일반적으로 사용하고 있다. 전체 가용 글자수의 20%정도 되는 크기이다.

 

아래는 한글 글자를 코퍼스 기준으로 카운팅 한 것을 플롯팅한 것과 그 일부분을 떼온 것이다.

벡터 파일인 pdf로 받은 분은 클릭!  <- 받아서 확대해 조신하게 살펴보면 재미있다.

image

 

image

 

 

가장 많이 사용되는 글자 Top 30은 아래와 같다.

 

image

 

아래는 정리 안된 코드…^^;

library(ggplot2)

start <- 44032

end <- 55203


v <- c()

for (x in start:end) {
  v <- append(v,intToUtf8(x))
}

syllable.cnt <- data.frame(syllable=v, count=1)



syllable.cnt$x <-seq(1, 11172)%%106 + 1
syllable.cnt$y <-as.vector(sapply(seq(106,1), function(x){ rep(x,106)}, simplify=T))[1:11172]


tbl <- read.table(file="http://dl.dropbox.com/u/8686172/hangul_cnt.txt", sep="\t", fileEncoding="UTF-8")

tbl <- tbl[order(tbl$V1, decreasing=F), ]

tbl2 <- tbl[order(tbl$V2, decreasing=T), ]

tbl2$V1 <- as.character(tbl2$V1)

ggplot(tbl2[1:30,], aes(x=V1, y=V2)) +
  geom_bar(aes(fill=V2)) + scale_fill_continuous("카운트",guide=guide_legend(reverse=T)) +scale_x_discrete(limits=tbl2$V1[1:30])  + coord_flip() + xlab("한글") + ylab("카운트") + ggtitle("세종계획 코퍼스 기반 Top 30 문자")


syllable.cnt[which(syllable.cnt$syllable %in% tbl$V1),c("count")] <- tbl$V2

library(extrafont)

loadfonts(device="win")
loadfonts()

cairo_pdf(width=10, height=10)
ggplot(syllable.cnt, aes(x, y)) + geom_text(aes(label=syllable, size=count, colour=count), family="Malgun Gothic") + scale_color_continuous(low = "#56B1F7",high = "#132B43") + xlab("") + ylab("") +
  theme(axis.text=element_blank(), axis.ticks=element_blank())
dev.off()
0 0 votes
Article Rating
Subscribe
Notify of
guest

3 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
용군

안녕하세요~
질문드릴 공간이 마땅히 않아 따끈따끈한 포스트 올리신데 질문을 드립니다.
결례를 용서해주세요 KONLP패키지의 SimplePos09함수 사용중 궁금한점이 있어
문의드립니다.

require(KoNLP)test=SimplePos09(“안녕하세요. 감사합니다.”)
> test$안녕하세요[1] “안녕/N+하/X+세/E+요/J”
$.[1] “./S”
test1=SimplePos09(“또 만났네요.”)> test1$감사합니다[1] “감사/N+하/X+ㅂ니다/E”
$.[1] “./S”

내부구조는 잘 모르겠지만 ^^: 왠지 .을 기준으로 sentence분석이 되는듯해서요
밀려서 결과가 나오는듯 합니다.

추후 개선해주실 계획이 있으신지, 임시 응급조치 방법은 없을지 궁금하여 글 드립니다. 

gogamza

메일 보셨는지 모르겠네요. ??

프로그램 버그 맞구요. 현재 패치를 적용해서 github에 올려두었습니다. 

릴리즈까지는 아무리 빨라야 3일 정도 소요되므로 아래 명령어로 git에서 받아서 쓰는것도 좋을 듯 합니다. 

install.packages(‘devtools’)
library(devtools)
install_github(‘KoNLP’, ‘haven-jeon’)

gogamza

오우.. 큰 버그 알려주셨네요. ^^;

원인은 찾았습니다.
다음 버전에서는 픽스되어 올라갈 겁니다.

감사합니다.

2012년 10월 10일 오후 6:55, Disqus 님의 말: