{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "from matplotlib.ticker import AutoMinorLocator\n", "import glob\n", "from collections import Counter \n", "import re\n", "import jieba\n", "import pdftotext" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Building prefix dict from the default dictionary ...\n", "Loading model from cache /tmp/jieba.cache\n", "Loading model cost 0.890 seconds.\n", "Prefix dict has been built succesfully.\n" ] } ], "source": [ "pdf_files = glob.glob('pdf/*')\n", "\n", "word_occ = dict()\n", "num_unique_words = np.zeros(len(pdf_files)+1)\n", "wordlengths = np.zeros(len(pdf_files))\n", "for i, pdf_file in enumerate(pdf_files, start=1):\n", " \n", " # read all text from PDF file\n", " with open(pdf_file, \"rb\") as f:\n", " text = '\\n\\n'.join(pdftotext.PDF(f))\n", " \n", " # strip out all space characters\n", " text = text.replace(' ', '')\n", " \n", " # segment text into words\n", " seg_list = jieba.lcut(text, cut_all=False)\n", " \n", " # remove all words that don't contain Chinese\n", " ch_only_seg_list = list()\n", " for j, seg in enumerate(seg_list):\n", " if re.search('[\\u4e00-\\u9FFF]', seg):\n", " ch_only_seg_list.append(seg)\n", " \n", " # wordlength of test\n", " wordlengths[i-1] = len(seg_list)\n", " \n", " # count occurrences of each word\n", " pdf_word_occ = Counter(ch_only_seg_list)\n", " \n", " # add word occurrences to totals\n", " for word, occ in pdf_word_occ.items():\n", " if word in word_occ.keys():\n", " # the word was on an earlier test PDF\n", " word_occ[word] += occ\n", " else:\n", " # the word hasn't been seen yet\n", " word_occ.update({word:occ})\n", " num_unique_words[i] += 1" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# cumulative sum of unique words\n", "total_unique_words = np.cumsum(num_unique_words)\n", "\n", "# fraction words on each test that were new\n", "frac_new = np.zeros(len(pdf_files)+1)\n", "frac_new[0] = 100\n", "frac_new[1:] = num_unique_words[1:]/wordlengths*100" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[11769. 11998. 11778. 11847. 6465. 11813. 11817. 11621. 7528. 11808.\n", " 12080. 11956. 11712. 7470. 11890. 11841. 11902. 6477. 7552. 11931.\n", " 7420.]\n", "10508.333333333334\n", "220675.0\n" ] } ], "source": [ "print(wordlengths)\n", "print(np.mean(wordlengths))\n", "print(np.sum(wordlengths))" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(6,8))\n", "ax.plot(np.arange(len(total_unique_words)), total_unique_words, marker='o')\n", "\n", "ax2=ax.twinx()\n", "ax2.plot(np.arange(len(total_unique_words)),frac_new, color='g')\n", "\n", "ax.tick_params(axis='both', labelsize=12)\n", "ax.yaxis.set_minor_locator(AutoMinorLocator(5))\n", "ax.grid(which='both')\n", "ax.set_title('counting unique words in HSK level 6 practice exams', fontsize=14)\n", "ax.set_xlabel('number of exams', fontsize=14)\n", "ax.set_ylabel('cumulative unique words', fontsize=14, color='b')\n", "ax.set_ylim([0, 25000])\n", "ax2.set_ylabel('unique words per exam [%]', fontsize=14, color='g')\n", "ax2.set_ylim([0,50])\n", "ax.text(7,1250,'github.com/JackElsey/hsk6-vocab-analysis')\n", "plt.savefig('wordcount_plot', bbox_inches='tight')" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "# sort dictionary of words by occurrences\n", "sorted_word_occ = {k: v for k, v in sorted(word_occ.items(), key=lambda item: item[1], reverse=True)}\n", "\n", "# output text file of words and occurrences\n", "with open('wordlist.csv', 'w') as outfile:\n", " for word, occ in sorted_word_occ.items():\n", " outfile.write(word+','+str(occ)+'\\r\\n')" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.4" } }, "nbformat": 4, "nbformat_minor": 4 }