diff --git a/Progetto_Lett.ipynb b/Progetto_Lett.ipynb index 9e75621..cf4f3e2 100644 --- a/Progetto_Lett.ipynb +++ b/Progetto_Lett.ipynb @@ -9,7 +9,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -25,7 +25,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -34,7 +34,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -43,7 +43,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -52,7 +52,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -61,7 +61,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ @@ -74,7 +74,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -87,7 +87,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ @@ -148,7 +148,7 @@ }, { "cell_type": "code", - "execution_count": 269, + "execution_count": 36, "metadata": {}, "outputs": [], "source": [ @@ -270,17 +270,38 @@ " iris = []\n", " i=0\n", " for div in self.soup.body.find_all(\"div1\"):\n", + " islm1=False;\n", " for verso in div.find_all('l'):\n", " i=i+1;\n", + " lm1_text=[];\n", " verso_text=elem_to_text(verso).strip();\n", + " for child in verso.children: #Manage elements\n", + " if (child.name=='lm1'):\n", + " islm1=True;\n", + " lm1_text.append(elem_to_text(child).strip());\n", + " # print (lm1_text);\n", + " \n", + " if(islm1):\n", + " islm1=False;\n", + " for lm1str in lm1_text:\n", + " replace_str=lm1str.partition(' ')[0];\n", + " verso_text=verso_text.replace(lm1str, replace_str);\n", + " \n", " for vparent in verso.parents:\n", " if (vparent.name=='div1'):\n", " canto = vparent.contents[0];\n", + " #\" \".join(verso_text.split())).strip()\n", + " verso_text=verso_text.replace(\" ,\", \",\");\n", + " verso_text=verso_text.replace(\" .\", \".\");\n", + " verso_text=verso_text.replace(\" !\", \"!\");\n", + " verso_text=verso_text.replace(\" ?\", \"?\");\n", + " verso_text=verso_text.replace(\"l' \", \"l'\");\n", " iri_verso=\"http://hdn.dantenetwork.it/resource/work/commedia/cantica/\"+str(self.idres)+\"/\"+\"/\".join(canto.lower().split())+\"/verso/\"+str(i);\n", " iri_verso=iri_verso+'\\n a efrbroo:F2_Expression ,\\n rdfs:Resource ; \\nhttp://erlangen-crm.org/current/P190_has_symbolic_content \"';\n", - " iri_verso=iri_verso+(\" \".join(verso_text.split())).strip()+ '\\\"^^xsd:string ;\\n http://erlangen-crm.org/current/P3_has_note';\n", + " iri_verso=iri_verso+verso_text.strip()+ '\"^^xsd:string ;\\n http://erlangen-crm.org/current/P3_has_note';\n", " iri_verso=iri_verso+' \"'+str(i)+'\"^^xsd:int ;\\n http://hdn.dantenetwork.it/resource/has_number \"'+str(i)+'\"^^xsd:int .'\n", - " iris.append((i, \" \".join(verso_text.split()), iri_verso));\n", + " \n", + " iris.append((i, verso_text.strip(), iri_verso));\n", " \n", " \n", " return iris\n", @@ -328,7 +349,7 @@ }, { "cell_type": "code", - "execution_count": 235, + "execution_count": 29, "metadata": {}, "outputs": [], "source": [ @@ -349,7 +370,7 @@ }, { "cell_type": "code", - "execution_count": 219, + "execution_count": 30, "metadata": {}, "outputs": [ { @@ -400,13 +421,13 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Carico il testo *inferno.xml* e creo una tabella\n", + "### Elaboro il file *inferno.xml*\n", "Eseguo il parsing del testo presente nel file e creo una tabella con le seguenti colonne: *forma flessa, categoria, lemma, canto, verso, pposizione forma flessa nel verso*" ] }, { "cell_type": "code", - "execution_count": 270, + "execution_count": 12, "metadata": {}, "outputs": [ { @@ -423,7 +444,7 @@ }, { "cell_type": "code", - "execution_count": 271, + "execution_count": 13, "metadata": {}, "outputs": [ { @@ -438,7 +459,7 @@ "dtype: int64" ] }, - "execution_count": 271, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" } @@ -453,7 +474,7 @@ }, { "cell_type": "code", - "execution_count": 272, + "execution_count": 14, "metadata": {}, "outputs": [ { @@ -594,7 +615,7 @@ "9 per [epskpl] [per] Canto 1 2 3" ] }, - "execution_count": 272, + "execution_count": 14, "metadata": {}, "output_type": "execute_result" } @@ -607,7 +628,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Generiamo una tabella con gli IRI dei versi per la cantica *Inferno*\n", + "#### Creo una tabella con gli IRI dei versi per la cantica *Inferno*\n", "\n", "La abella contiene il numero del verso, il verso e l'IRI del verso. \n", "Per l'IRI del verso mi son basato su quanto riportato nel file *Commedia.rdf*, un esempio è il seguente: \n", @@ -625,7 +646,7 @@ }, { "cell_type": "code", - "execution_count": 280, + "execution_count": 15, "metadata": {}, "outputs": [ { @@ -637,7 +658,7 @@ "dtype: int64" ] }, - "execution_count": 280, + "execution_count": 15, "metadata": {}, "output_type": "execute_result" } @@ -651,21 +672,21 @@ }, { "cell_type": "code", - "execution_count": 282, + "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", + " }
NumeroVerso Verso IRIVerso
\n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + "
NumeroVerso Verso IRIVerso
01Nel mezzo del cammin di nostra vitahttp://hdn.dantenetwork.it/resource/work/commedia/cantica/1/canto/1/verso/1\n", + " 01Nel mezzo del cammin di nostra vitahttp://hdn.dantenetwork.it/resource/work/commedia/cantica/1/canto/1/verso/1\n", " a efrbroo:F2_Expression ,\n", " rdfs:Resource ; \n", "http://erlangen-crm.org/current/P190_has_symbolic_content \"Nel mezzo del cammin di nostra vita\"^^xsd:string ;\n", @@ -673,10 +694,10 @@ " http://hdn.dantenetwork.it/resource/has_number \"1\"^^xsd:int .
12mi ritrovai per una selva oscurahttp://hdn.dantenetwork.it/resource/work/commedia/cantica/1/canto/1/verso/2\n", + " 12mi ritrovai per una selva oscurahttp://hdn.dantenetwork.it/resource/work/commedia/cantica/1/canto/1/verso/2\n", " a efrbroo:F2_Expression ,\n", " rdfs:Resource ; \n", "http://erlangen-crm.org/current/P190_has_symbolic_content \"mi ritrovai per una selva oscura\"^^xsd:string ;\n", @@ -684,21 +705,21 @@ " http://hdn.dantenetwork.it/resource/has_number \"2\"^^xsd:int .
23ché la diritta via era smarrita .http://hdn.dantenetwork.it/resource/work/commedia/cantica/1/canto/1/verso/3\n", + " 23ché la diritta via era smarrita.http://hdn.dantenetwork.it/resource/work/commedia/cantica/1/canto/1/verso/3\n", " a efrbroo:F2_Expression ,\n", " rdfs:Resource ; \n", - "http://erlangen-crm.org/current/P190_has_symbolic_content \"ché la diritta via era smarrita .\"^^xsd:string ;\n", + "http://erlangen-crm.org/current/P190_has_symbolic_content \"ché la diritta via era smarrita.\"^^xsd:string ;\n", " http://erlangen-crm.org/current/P3_has_note \"3\"^^xsd:int ;\n", " http://hdn.dantenetwork.it/resource/has_number \"3\"^^xsd:int .
34Ahi quanto a dir qual era è cosa durahttp://hdn.dantenetwork.it/resource/work/commedia/cantica/1/canto/1/verso/4\n", + " 34Ahi quanto a dir qual era è cosa durahttp://hdn.dantenetwork.it/resource/work/commedia/cantica/1/canto/1/verso/4\n", " a efrbroo:F2_Expression ,\n", " rdfs:Resource ; \n", "http://erlangen-crm.org/current/P190_has_symbolic_content \"Ahi quanto a dir qual era è cosa dura\"^^xsd:string ;\n", @@ -706,10 +727,10 @@ " http://hdn.dantenetwork.it/resource/has_number \"4\"^^xsd:int .
45esta selva selvaggia e aspra e fortehttp://hdn.dantenetwork.it/resource/work/commedia/cantica/1/canto/1/verso/5\n", + " 45esta selva selvaggia e aspra e fortehttp://hdn.dantenetwork.it/resource/work/commedia/cantica/1/canto/1/verso/5\n", " a efrbroo:F2_Expression ,\n", " rdfs:Resource ; \n", "http://erlangen-crm.org/current/P190_has_symbolic_content \"esta selva selvaggia e aspra e forte\"^^xsd:string ;\n", @@ -719,10 +740,10 @@ "
" ], "text/plain": [ - "" + "" ] }, - "execution_count": 282, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" } @@ -735,17 +756,17 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "#### File *purgatorio.xml*\n", - "\n", - "Test, ignorare.\n" + "### Elaborazione del file *purgatorio.xml*\n", + "Eseguo il parsing del testo presente nel file e creo una tabella simile alla precedente" ] }, { "cell_type": "code", - "execution_count": 276, + "execution_count": 17, "metadata": {}, "outputs": [], "source": [ + "#TEST IGNORARE\n", "#tei_purgatorio = TEIFile('/Users/cesare/Projects/hdn/triple/DanteTriple/xml/DanteSearch/grammaticale/purgatorio.xml', 2)\n", "#bbs_pu=tei_purgatorio.IRIverso\n", "#for repu in bbs_pu:\n", @@ -755,18 +776,9 @@ "# break" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Carico il testo *purgatorio.xml* e creo una tabella\n", - "Eseguo il parsing del testo presente nel file e creo una tabella simile alla precedente\n", - "\\ forma flessa con due lemmi, gestire nel parser" - ] - }, { "cell_type": "code", - "execution_count": 277, + "execution_count": 18, "metadata": {}, "outputs": [ { @@ -783,7 +795,7 @@ }, { "cell_type": "code", - "execution_count": 278, + "execution_count": 19, "metadata": {}, "outputs": [ { @@ -798,14 +810,12 @@ "dtype: int64" ] }, - "execution_count": 278, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "#DA COMPLETARE CON IRI CORRETTO!\n", - "\n", "data_purgatorio = [parsed_purgatorio[0]]\n", "#dfObj_purgatorio = pd.DataFrame(data_purgatorio[0]) \n", "testo_purgatorio_tabella=pd.DataFrame(data_purgatorio[0], columns = ['FormaFlessa' , 'Categoria', 'Lemma', 'Canto', 'Verso', 'PosizioneFFNelVerso']) \n", @@ -814,7 +824,7 @@ }, { "cell_type": "code", - "execution_count": 279, + "execution_count": 20, "metadata": {}, "outputs": [ { @@ -912,7 +922,7 @@ "33244 7 " ] }, - "execution_count": 279, + "execution_count": 20, "metadata": {}, "output_type": "execute_result" } @@ -925,14 +935,14 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Generiamo una tabella con gli IRI dei versi per la cantica *Purgatorio*\n", + "#### Creazione di una tabella con gli IRI dei versi per la cantica *Purgatorio*\n", "\n", "La tabella contiene il numero del verso, il verso e l'IRI del verso. " ] }, { "cell_type": "code", - "execution_count": 284, + "execution_count": 21, "metadata": {}, "outputs": [ { @@ -944,7 +954,7 @@ "dtype: int64" ] }, - "execution_count": 284, + "execution_count": 21, "metadata": {}, "output_type": "execute_result" } @@ -958,21 +968,21 @@ }, { "cell_type": "code", - "execution_count": 285, + "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", + " }
NumeroVerso Verso IRIVerso
\n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + " \n", " \n", " \n", - " \n", - " \n", - " \n", - " \n", + " \n", + " \n", + "
NumeroVerso Verso IRIVerso
01Per correr miglior acque alza le velehttp://hdn.dantenetwork.it/resource/work/commedia/cantica/2/canto/1/verso/1\n", + " 01Per correr miglior acque alza le velehttp://hdn.dantenetwork.it/resource/work/commedia/cantica/2/canto/1/verso/1\n", " a efrbroo:F2_Expression ,\n", " rdfs:Resource ; \n", "http://erlangen-crm.org/current/P190_has_symbolic_content \"Per correr miglior acque alza le vele\"^^xsd:string ;\n", @@ -980,21 +990,21 @@ " http://hdn.dantenetwork.it/resource/has_number \"1\"^^xsd:int .
12omai la navicella del del mio ingegno ,http://hdn.dantenetwork.it/resource/work/commedia/cantica/2/canto/1/verso/2\n", + " 12omai la navicella del mio ingegno,http://hdn.dantenetwork.it/resource/work/commedia/cantica/2/canto/1/verso/2\n", " a efrbroo:F2_Expression ,\n", " rdfs:Resource ; \n", - "http://erlangen-crm.org/current/P190_has_symbolic_content \"omai la navicella del del mio ingegno ,\"^^xsd:string ;\n", + "http://erlangen-crm.org/current/P190_has_symbolic_content \"omai la navicella del mio ingegno,\"^^xsd:string ;\n", " http://erlangen-crm.org/current/P3_has_note \"2\"^^xsd:int ;\n", " http://hdn.dantenetwork.it/resource/has_number \"2\"^^xsd:int .
23che lascia dietro a sé mar sì crudele;http://hdn.dantenetwork.it/resource/work/commedia/cantica/2/canto/1/verso/3\n", + " 23che lascia dietro a sé mar sì crudele;http://hdn.dantenetwork.it/resource/work/commedia/cantica/2/canto/1/verso/3\n", " a efrbroo:F2_Expression ,\n", " rdfs:Resource ; \n", "http://erlangen-crm.org/current/P190_has_symbolic_content \"che lascia dietro a sé mar sì crudele;\"^^xsd:string ;\n", @@ -1002,10 +1012,10 @@ " http://hdn.dantenetwork.it/resource/has_number \"3\"^^xsd:int .
34e canterò di quel secondo regnohttp://hdn.dantenetwork.it/resource/work/commedia/cantica/2/canto/1/verso/4\n", + " 34e canterò di quel secondo regnohttp://hdn.dantenetwork.it/resource/work/commedia/cantica/2/canto/1/verso/4\n", " a efrbroo:F2_Expression ,\n", " rdfs:Resource ; \n", "http://erlangen-crm.org/current/P190_has_symbolic_content \"e canterò di quel secondo regno\"^^xsd:string ;\n", @@ -1013,10 +1023,10 @@ " http://hdn.dantenetwork.it/resource/has_number \"4\"^^xsd:int .
45dove l' umano spirito si purgahttp://hdn.dantenetwork.it/resource/work/commedia/cantica/2/canto/1/verso/5\n", + " 45dove l' umano spirito si purgahttp://hdn.dantenetwork.it/resource/work/commedia/cantica/2/canto/1/verso/5\n", " a efrbroo:F2_Expression ,\n", " rdfs:Resource ; \n", "http://erlangen-crm.org/current/P190_has_symbolic_content \"dove l' umano spirito si purga\"^^xsd:string ;\n", @@ -1026,10 +1036,10 @@ "
" ], "text/plain": [ - "" + "" ] }, - "execution_count": 285, + "execution_count": 22, "metadata": {}, "output_type": "execute_result" } @@ -1038,6 +1048,460 @@ "df_IRI_versi_pur.head().style.set_properties(subset=['IRIVerso'], **{'width': '400px'})" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Elaborazione del file paradiso.xml\n", + "Eseguo il parsing del testo presente nel file e creo una tabella simile alle precedenti" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Handled /Users/cesare/Projects/hdn/triple/DanteTriple/xml/DanteSearch/grammaticale/paradiso.xml\n" + ] + } + ], + "source": [ + "parsed_paradiso=tei_to_csv_entry('/Users/cesare/Projects/hdn/triple/DanteTriple/xml/DanteSearch/grammaticale/paradiso.xml', 3)" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "FormaFlessa 32747\n", + "Categoria 32747\n", + "Lemma 32747\n", + "Canto 32747\n", + "Verso 32747\n", + "PosizioneFFNelVerso 32747\n", + "dtype: int64" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data_paradiso = [parsed_paradiso[0]]\n", + "testo_paradiso_tabella=pd.DataFrame(data_paradiso[0], columns = ['FormaFlessa' , 'Categoria', 'Lemma', 'Canto', 'Verso', 'PosizioneFFNelVerso']) \n", + "testo_paradiso_tabella.count()" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "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", + "
FormaFlessaCategoriaLemmaCantoVersoPosizioneFFNelVerso
0La[rdfs][la]Canto 111
1gloria[sf1fs][gloria]Canto 112
2di[epskg][di]Canto 113
3colui[pdms][colui]Canto 114
4che[pr][che]Canto 115
5tutto[pi1ms][tutto]Canto 116
6move[vta2ips3][muovere]Canto 117
7per[epskpl][per]Canto 121
8l'[rdms][lo]Canto 122
9universo[sm2ms][universo]Canto 123
10penetra[vi1ips3][penetrare]Canto 124
11e[cscc][e]Canto 125
12risplende[vi2ips3][risplendere]Canto 126
13in[epsksl][in]Canto 131
14una[rifs][una]Canto 132
15parte[sf3fs][parte]Canto 133
16più[b][più]Canto 134
17e[cscc][e]Canto 135
18meno[b][meno]Canto 136
19altrove[b][altrove]Canto 137
20Nel[epaksl, rdms][in, il]Canto 141
\n", + "
" + ], + "text/plain": [ + " FormaFlessa Categoria Lemma Canto Verso \\\n", + "0 La [rdfs] [la] Canto 1 1 \n", + "1 gloria [sf1fs] [gloria] Canto 1 1 \n", + "2 di [epskg] [di] Canto 1 1 \n", + "3 colui [pdms] [colui] Canto 1 1 \n", + "4 che [pr] [che] Canto 1 1 \n", + "5 tutto [pi1ms] [tutto] Canto 1 1 \n", + "6 move [vta2ips3] [muovere] Canto 1 1 \n", + "7 per [epskpl] [per] Canto 1 2 \n", + "8 l' [rdms] [lo] Canto 1 2 \n", + "9 universo [sm2ms] [universo] Canto 1 2 \n", + "10 penetra [vi1ips3] [penetrare] Canto 1 2 \n", + "11 e [cscc] [e] Canto 1 2 \n", + "12 risplende [vi2ips3] [risplendere] Canto 1 2 \n", + "13 in [epsksl] [in] Canto 1 3 \n", + "14 una [rifs] [una] Canto 1 3 \n", + "15 parte [sf3fs] [parte] Canto 1 3 \n", + "16 più [b] [più] Canto 1 3 \n", + "17 e [cscc] [e] Canto 1 3 \n", + "18 meno [b] [meno] Canto 1 3 \n", + "19 altrove [b] [altrove] Canto 1 3 \n", + "20 Nel [epaksl, rdms] [in, il] Canto 1 4 \n", + "\n", + " PosizioneFFNelVerso \n", + "0 1 \n", + "1 2 \n", + "2 3 \n", + "3 4 \n", + "4 5 \n", + "5 6 \n", + "6 7 \n", + "7 1 \n", + "8 2 \n", + "9 3 \n", + "10 4 \n", + "11 5 \n", + "12 6 \n", + "13 1 \n", + "14 2 \n", + "15 3 \n", + "16 4 \n", + "17 5 \n", + "18 6 \n", + "19 7 \n", + "20 1 " + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "testo_paradiso_tabella.head(21)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Creazione di una tabella con gli IRI dei versi per la cantica Paradiso\n", + "La tabella contiene il numero del verso, il verso e l'IRI del verso." + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "NumeroVerso 4757\n", + "Verso 4757\n", + "IRIVerso 4757\n", + "dtype: int64" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data_IRI_versi_par = [parsed_paradiso[1]]\n", + "#data_IRI_versi\n", + "df_IRI_versi_par=pd.DataFrame(data_IRI_versi_par[0], columns = ['NumeroVerso', 'Verso' , 'IRIVerso']) \n", + "df_IRI_versi_par.count()" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "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", + "
NumeroVerso Verso IRIVerso
01La gloria di colui che tutto movehttp://hdn.dantenetwork.it/resource/work/commedia/cantica/3/canto/1/verso/1\n", + " a efrbroo:F2_Expression ,\n", + " rdfs:Resource ; \n", + "http://erlangen-crm.org/current/P190_has_symbolic_content \"La gloria di colui che tutto move\"^^xsd:string ;\n", + " http://erlangen-crm.org/current/P3_has_note \"1\"^^xsd:int ;\n", + " http://hdn.dantenetwork.it/resource/has_number \"1\"^^xsd:int .
12per l'universo penetra, e risplendehttp://hdn.dantenetwork.it/resource/work/commedia/cantica/3/canto/1/verso/2\n", + " a efrbroo:F2_Expression ,\n", + " rdfs:Resource ; \n", + "http://erlangen-crm.org/current/P190_has_symbolic_content \"per l'universo penetra, e risplende\"^^xsd:string ;\n", + " http://erlangen-crm.org/current/P3_has_note \"2\"^^xsd:int ;\n", + " http://hdn.dantenetwork.it/resource/has_number \"2\"^^xsd:int .
23in una parte più e meno altrove.http://hdn.dantenetwork.it/resource/work/commedia/cantica/3/canto/1/verso/3\n", + " a efrbroo:F2_Expression ,\n", + " rdfs:Resource ; \n", + "http://erlangen-crm.org/current/P190_has_symbolic_content \"in una parte più e meno altrove.\"^^xsd:string ;\n", + " http://erlangen-crm.org/current/P3_has_note \"3\"^^xsd:int ;\n", + " http://hdn.dantenetwork.it/resource/has_number \"3\"^^xsd:int .
34Nel ciel che più de la sua luce prendehttp://hdn.dantenetwork.it/resource/work/commedia/cantica/3/canto/1/verso/4\n", + " a efrbroo:F2_Expression ,\n", + " rdfs:Resource ; \n", + "http://erlangen-crm.org/current/P190_has_symbolic_content \"Nel ciel che più de la sua luce prende\"^^xsd:string ;\n", + " http://erlangen-crm.org/current/P3_has_note \"4\"^^xsd:int ;\n", + " http://hdn.dantenetwork.it/resource/has_number \"4\"^^xsd:int .
45fu' io, e vidi cose che ridirehttp://hdn.dantenetwork.it/resource/work/commedia/cantica/3/canto/1/verso/5\n", + " a efrbroo:F2_Expression ,\n", + " rdfs:Resource ; \n", + "http://erlangen-crm.org/current/P190_has_symbolic_content \"fu' io, e vidi cose che ridire\"^^xsd:string ;\n", + " http://erlangen-crm.org/current/P3_has_note \"5\"^^xsd:int ;\n", + " http://hdn.dantenetwork.it/resource/has_number \"5\"^^xsd:int .
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_IRI_versi_par.head().style.set_properties(subset=['IRIVerso'], **{'width': '400px'})" + ] + }, { "cell_type": "code", "execution_count": null,