diff --git a/module3/exo3/exercice.ipynb b/module3/exo3/exercice.ipynb index c44021fb8cf58b1a7c6ac69767e3a857c356bdc6..18a5e25189fd934aeffeb47a4636a3257aeff1ab 100644 --- a/module3/exo3/exercice.ipynb +++ b/module3/exo3/exercice.ipynb @@ -1851,338 +1851,591 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 83, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Acte 1, Scène 1, Rôle : valere, nombre de mots : 58\n", - "Acte 1, Scène 1, Rôle : elise, nombre de mots : 68\n", - "Acte 1, Scène 1, Rôle : valere, nombre de mots : 14\n", - "Acte 1, Scène 1, Rôle : elise, nombre de mots : 51\n", - "Acte 1, Scène 1, Rôle : valere, nombre de mots : 45\n", - "Acte 1, Scène 1, Rôle : elise, nombre de mots : 26\n", - "Acte 1, Scène 1, Rôle : valere, nombre de mots : 70\n", - "Acte 1, Scène 1, Rôle : elise, nombre de mots : 63\n", - "Acte 1, Scène 1, Rôle : valere, nombre de mots : 4\n", - "Acte 1, Scène 1, Rôle : elise, nombre de mots : 224\n", - "Acte 1, Scène 1, Rôle : valere, nombre de mots : 138\n", - "Acte 1, Scène 1, Rôle : elise, nombre de mots : 22\n", - "Acte 1, Scène 1, Rôle : valere, nombre de mots : 215\n", - "Acte 1, Scène 1, Rôle : elise, nombre de mots : 24\n", - "Acte 1, Scène 1, Rôle : valere, nombre de mots : 86\n", - "Acte 1, Scène 1, Rôle : elise, nombre de mots : 13\n", - "Acte 1, Scène 2, Rôle : cleante, nombre de mots : 24\n", - "Acte 1, Scène 2, Rôle : elise, nombre de mots : 14\n", - "Acte 1, Scène 2, Rôle : cleante, nombre de mots : 11\n", - "Acte 1, Scène 2, Rôle : elise, nombre de mots : 2\n", - "Acte 1, Scène 2, Rôle : cleante, nombre de mots : 173\n", - "Acte 1, Scène 2, Rôle : elise, nombre de mots : 11\n", - "Acte 1, Scène 2, Rôle : cleante, nombre de mots : 24\n", - "Acte 1, Scène 2, Rôle : elise, nombre de mots : 8\n", - "Acte 1, Scène 2, Rôle : cleante, nombre de mots : 26\n", - "Acte 1, Scène 2, Rôle : elise, nombre de mots : 43\n", - "Acte 1, Scène 2, Rôle : cleante, nombre de mots : 10\n", - "Acte 1, Scène 2, Rôle : elise, nombre de mots : 13\n", - "Acte 1, Scène 2, Rôle : cleante, nombre de mots : 151\n", - "Acte 1, Scène 2, Rôle : elise, nombre de mots : 27\n", - "Acte 1, Scène 2, Rôle : cleante, nombre de mots : 105\n", - "Acte 1, Scène 2, Rôle : elise, nombre de mots : 11\n", - "Acte 1, Scène 2, Rôle : cleante, nombre de mots : 212\n", - "Acte 1, Scène 2, Rôle : elise, nombre de mots : 25\n", - "Acte 1, Scène 2, Rôle : cleante, nombre de mots : 27\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 28\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 25\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 5\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 4\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 18\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 8\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 10\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 11\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 77\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 26\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 61\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 6\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 25\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 23\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 20\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 4\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 6\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 4\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 9\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 2\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 2\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 2\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 1\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 2\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 7\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 3\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 27\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 21\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 1\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 1\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 8\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 14\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 7\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 9\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 4\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 4\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 12\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 12\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 5\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 2\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 6\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 5\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 9\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 7\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 10\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 11\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 21\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 7\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 9\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 7\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 13\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 4\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 6\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 8\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 3\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 3\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 2\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 8\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 7\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 1\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 6\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 8\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 1\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 1\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 8\n", - "Acte 1, Scène 3, Rôle : la-fleche, nombre de mots : 5\n", - "Acte 1, Scène 3, Rôle : harpagon, nombre de mots : 31\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 154\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 9\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 6\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 1\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 1\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 6\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 1\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 4\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 2\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 48\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 10\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 34\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 7\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 10\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 4\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 7\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 4\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 5\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 4\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 2\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 14\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 22\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 33\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 6\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 13\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 13\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 35\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 8\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 87\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 4\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 16\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 24\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 134\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 31\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 21\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 13\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 11\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 11\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 16\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 31\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 62\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 2\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 5\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 7\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 4\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 2\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 6\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 5\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 17\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 6\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 2\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 11\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 2\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 8\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 1\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 27\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 18\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 37\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 37\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 1\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 1\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 5\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 8\n", - "Acte 1, Scène 4, Rôle : cleante, nombre de mots : 15\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 70\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 22\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 12\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 17\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 6\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 6\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 17\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 16\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 6\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 4\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 1\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 1\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 4\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 4\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 10\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 8\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 10\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 27\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 14\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 22\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 14\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 15\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 3\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 6\n", - "Acte 1, Scène 4, Rôle : elise, nombre de mots : 9\n", - "Acte 1, Scène 4, Rôle : harpagon, nombre de mots : 4\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 18\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 6\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 7\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 12\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 33\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 5\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 1\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 2\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 1\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 33\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 36\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 33\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 29\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 2\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 1\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 21\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 7\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 62\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 2\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 63\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 2\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 86\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 2\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 19\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 30\n", - "Acte 1, Scène 5, Rôle : elise, nombre de mots : 10\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 96\n", - "Acte 1, Scène 5, Rôle : elise, nombre de mots : 4\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 7\n", - "Acte 1, Scène 5, Rôle : elise, nombre de mots : 11\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 9\n", - "Acte 1, Scène 5, Rôle : elise, nombre de mots : 11\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 32\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 6\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 55\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 5\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 21\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 45\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 20\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 5\n", - "Acte 1, Scène 5, Rôle : valere, nombre de mots : 11\n", - "Acte 1, Scène 5, Rôle : harpagon, nombre de mots : 5\n" - ] - }, - { - "ename": "TypeError", - "evalue": "'NoneType' object is not iterable", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 7\u001b[0m \u001b[0mnbMots\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 8\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mphrase\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mparoles\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0miter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"{http://www.tei-c.org/ns/1.0}s\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 9\u001b[0;31m \u001b[0mnbMots\u001b[0m \u001b[0;34m+=\u001b[0m \u001b[0mcompte_mots\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mphrase\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtext\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 10\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"Acte {}, Scène {}, Rôle : {}, nombre de mots : {}\"\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnumeroActe\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnumeroScene\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrole\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnbMots\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m\u001b[0m in \u001b[0;36mcompte_mots\u001b[0;34m(texte)\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mnbMots\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0msepAvant\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 5\u001b[0;31m \u001b[0;32mfor\u001b[0m \u001b[0mc\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mtexte\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 6\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mc\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mSEPARATEURS\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7\u001b[0m \u001b[0msepAvant\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mTypeError\u001b[0m: 'NoneType' object is not iterable" - ] - } - ], + "outputs": [], "source": [ + "# Données sous forme d'une liste de dictionnaires :\n", + "data = []\n", + "identifiantsParoles = []\n", "for acte in root.iter(\"{http://www.tei-c.org/ns/1.0}div1\"):\n", " numeroActe = acte.get('n')\n", " for scene in acte.iter(\"{http://www.tei-c.org/ns/1.0}div2\"):\n", - " numeroScene = scene.get('n')\n", + " numeroScene = numeroActe + '-' + scene.get('n')\n", " for paroles in scene.iter(\"{http://www.tei-c.org/ns/1.0}sp\"):\n", - " role = paroles.get('who')\n", + " paroleId = paroles.get('{http://www.w3.org/XML/1998/namespace}id')\n", + " roleId = paroles.get('who')\n", " nbMots = 0\n", " for phrase in paroles.iter(\"{http://www.tei-c.org/ns/1.0}s\"):\n", - " nbMots += compte_mots(phrase.text)\n", - " print(\"Acte {}, Scène {}, Rôle : {}, nombre de mots : {}\".format(numeroActe, numeroScene, role, nbMots))" + " if phrase.text:\n", + " nbMots += compte_mots(phrase.text)\n", + " data.append({'act': numeroActe, 'scene': numeroScene, 'role': roleId, 'mots': nbMots})\n", + " identifiantsParoles.append(paroleId)\n", + "# print(\"Acte {}, Scène {}, Rôle : {}, nombre de mots : {}\".format(numeroActe, numeroScene, roleId, nbMots))" ] }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 84, "metadata": {}, "outputs": [ { - "name": "stdout", - "output_type": "stream", - "text": [ - "act\n", - "act\n", - "act\n", - "act\n", - "act\n" - ] + "data": { + "text/plain": [ + "act object\n", + "mots int64\n", + "role object\n", + "scene object\n", + "dtype: object" + ] + }, + "execution_count": 84, + "metadata": {}, + "output_type": "execute_result" } ], "source": [ - "for acte in root.iter(\"{http://www.tei-c.org/ns/1.0}div1\"):\n", - " print(acte.get('type'))" + "df = pd.DataFrame(data, index=identifiantsParoles)\n", + "df.dtypes" ] }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 85, "metadata": {}, "outputs": [ { "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
actmotsrolescene
V06-20523maitre-jacques5-6
V06-2158anselme5-6
V06-2255harpagon5-6
V06-23511anselme5-6
V06-2456harpagon5-6
\n", + "
" + ], "text/plain": [ - "[]" + " act mots role scene\n", + "V06-20 5 23 maitre-jacques 5-6\n", + "V06-21 5 8 anselme 5-6\n", + "V06-22 5 5 harpagon 5-6\n", + "V06-23 5 11 anselme 5-6\n", + "V06-24 5 6 harpagon 5-6" ] }, - "execution_count": 24, + "execution_count": 85, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "root.findall(\"[@type]\")" + "df.tail()" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 56, "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "data": { + "text/plain": [ + "20757" + ] + }, + "execution_count": 56, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.mots.sum()" + ] + }, + { + "cell_type": "code", + "execution_count": 86, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
mots
scenerole
1-1elise491
valere630
1-2cleante763
elise154
1-3harpagon465
la-fleche258
1-4cleante216
elise162
harpagon1146
1-5elise36
harpagon271
valere671
2-1cleante379
la-fleche903
2-2cleante127
harpagon171
la-fleche12
maitre-simon197
2-3frosine1
harpagon21
2-4frosine130
la-fleche276
2-5frosine1482
harpagon555
3-1brindavoine23
cleante76
elise3
harpagon747
la-merluche26
maitre-jacques779
.........
4-4maitre-jacques300
4-5cleante163
harpagon129
4-6cleante17
la-fleche47
4-7harpagon407
5-1commissaire109
harpagon89
5-2commissaire159
harpagon182
maitre-jacques348
5-3harpagon441
maitre-jacques11
valere641
5-4elise143
frosine4
harpagon124
maitre-jacques7
valere22
5-5anselme403
harpagon258
maitre-jacques7
mariane192
valere376
5-6anselme114
cleante130
commissaire26
harpagon89
maitre-jacques23
mariane36
\n", + "

95 rows × 1 columns

\n", + "
" + ], + "text/plain": [ + " mots\n", + "scene role \n", + "1-1 elise 491\n", + " valere 630\n", + "1-2 cleante 763\n", + " elise 154\n", + "1-3 harpagon 465\n", + " la-fleche 258\n", + "1-4 cleante 216\n", + " elise 162\n", + " harpagon 1146\n", + "1-5 elise 36\n", + " harpagon 271\n", + " valere 671\n", + "2-1 cleante 379\n", + " la-fleche 903\n", + "2-2 cleante 127\n", + " harpagon 171\n", + " la-fleche 12\n", + " maitre-simon 197\n", + "2-3 frosine 1\n", + " harpagon 21\n", + "2-4 frosine 130\n", + " la-fleche 276\n", + "2-5 frosine 1482\n", + " harpagon 555\n", + "3-1 brindavoine 23\n", + " cleante 76\n", + " elise 3\n", + " harpagon 747\n", + " la-merluche 26\n", + " maitre-jacques 779\n", + "... ...\n", + "4-4 maitre-jacques 300\n", + "4-5 cleante 163\n", + " harpagon 129\n", + "4-6 cleante 17\n", + " la-fleche 47\n", + "4-7 harpagon 407\n", + "5-1 commissaire 109\n", + " harpagon 89\n", + "5-2 commissaire 159\n", + " harpagon 182\n", + " maitre-jacques 348\n", + "5-3 harpagon 441\n", + " maitre-jacques 11\n", + " valere 641\n", + "5-4 elise 143\n", + " frosine 4\n", + " harpagon 124\n", + " maitre-jacques 7\n", + " valere 22\n", + "5-5 anselme 403\n", + " harpagon 258\n", + " maitre-jacques 7\n", + " mariane 192\n", + " valere 376\n", + "5-6 anselme 114\n", + " cleante 130\n", + " commissaire 26\n", + " harpagon 89\n", + " maitre-jacques 23\n", + " mariane 36\n", + "\n", + "[95 rows x 1 columns]" + ] + }, + "execution_count": 86, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.groupby(['scene', 'role']).sum()" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " mots\n", + "role \n", + "anselme 517\n" + ] + } + ], + "source": [ + "reponse = df.groupby(['role']).sum()\n", + "#reponse\n", + "print(reponse[:1])" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\n", + "\n", + "\n", + "\n" + ] + } + ], + "source": [ + "for acte in root.iter(\"{http://www.tei-c.org/ns/1.0}div1\"):\n", + " numeroActe = acte.get('n')\n", + " print(type(numeroActe))" + ] } ], "metadata": {