word_analyzer.py
를 import하여 WordAnalyzer
class를 적절히 활용한다.
WordAnalyzer
class의 analyzeText
메소드를 활용하면 주어진 input text를 분석하여 json 형식으로 반환한다.
word_analyzer.py
: 분석기 구현word_data
: 분석에 사용되는 데이터들analyze_result
: 분석 결과 예시
- CEFR 데이터 : 영단어의 수준을 CEFR 점수로 측정한 데이터
- Dale Chall List : Dale Chall이 고안한 어렵지 않은 단어 목록 / 출처
- 빈도수 데이터 : 자주 쓰이는 단어를 랭킹순으로 정렬(자주 쓰이면 친숙하다는 가정) / 출처
tv_movie_script_10000.csv
: tv나 영화 대본에서 자주 쓰이는 단어 10000개simpson_freq_5000.csv
: 에니메이션 심슨에서 자주 쓰이는 단어 5000개project_gutenberg_10000.csv
: 구텐버그 프로젝트에서 분석한 자주 스이는 단어 10000개
- 문장 전체의 난이도는 사용된 단어의 CEFR 점수의 평균으로 구하였습니다.
- 빈도수를 CEFR 점수로 변환하는 것은 http://polydog.org/index.php?threads/the-cefr-scale-and-language-level.26/ 를 참고하였습니다.
- 가독성 점수는 Dale Chall Readability Formula 를 사용하였습니다. https://readabilityformulas.com/
- A1 A2 초급 및 중급 이전 수준
- B1 B2 중하급 및 중상급
- C1 고급수준
- C2 완전한 능숙도
- 0.1579어려운단어의 백분율 + 0.0496(단어수/문장수)
- 4.9이하 : 4학년 수준
- 5.9이하 : 6학년 수준
- 6.9이하 : 8학년 수준
- ...
- 9.9이하 : 13에서 15학년(대학생) 수준