{ "cells": [ { "cell_type": "code", "execution_count": 73, "id": "7a3837ac-cced-4e01-bf57-265e40729692", "metadata": { "tags": [] }, "outputs": [], "source": [ "import pandas as pd\n", "import re\n", "import numpy as np\n", "import thefuzz\n", "import tqdm\n", "import matplotlib.pyplot as plt\n", "import requests\n", "import json\n", "\n", "pd.set_option('display.max_colwidth', None)" ] }, { "cell_type": "code", "execution_count": 74, "id": "29ca0dc8-cae7-4f12-bd60-fd74ea6ae5ac", "metadata": { "tags": [] }, "outputs": [], "source": [ "BE_df = pd.read_excel('../Daten/Vorhersagen/Katalogauszug und Vorhersagen.xlsx', index_col=0)" ] }, { "cell_type": "code", "execution_count": 75, "id": "c1e1c42a-962f-40bc-bb17-b62e8089feb7", "metadata": { "tags": [] }, "outputs": [], "source": [ "entry_df = pd.read_excel('../Daten/Katalogabgleich/Einträge.xlsx', index_col=0)" ] }, { "cell_type": "code", "execution_count": 76, "id": "50d15898-4687-46b7-b7e0-528d7cf9aec0", "metadata": { "tags": [] }, "outputs": [], "source": [ "def prepare_string(string):\n", " new = re.sub(r'[àáâãå]', 'a', string)\n", " new = re.sub(r'[èéêë]', 'e', new)\n", " new = re.sub(r'[ìíîï]', 'i', new)\n", " new = re.sub(r'[òóôõ]', 'o', new)\n", " new = re.sub(r'[ùúû]', 'u', new)\n", " new = re.sub(r'æ', 'ae', new)\n", " new = re.sub('[.,:;()¬]|^[CLXVI]+? |^\\d+? |^\\d+?\\.+? |^\\.+ ?|= |# ', '', new)\n", " return new\n", "\n", "entry_df['cleaned entry'] = entry_df['entry'].apply(lambda x: prepare_string(x))" ] }, { "cell_type": "code", "execution_count": 6, "id": "990dfeee-1141-4acb-8a3d-a7af0573f5be", "metadata": { "tags": [] }, "outputs": [], "source": [ "BE_early = BE_df[BE_df['Anfang Veröffentlichungsdatum'] < 1736]\n", "BE_early_no_dup = BE_early.drop_duplicates('Titel')\n", "BE_no_year = BE_df[BE_df['Anfang Veröffentlichungsdatum'].isna()].drop_duplicates('Titel')\n", "BE_manual = BE_df.loc[BE_early_no_dup.index.union(BE_no_year.index)]" ] }, { "cell_type": "code", "execution_count": 7, "id": "bcd301fe-cb80-4b1c-b65f-465fce5ed915", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "array([['BE.1.T.33', '+Z167651701',\n", " \"Les deux livres de S. Augustin, de la veritable religion et des moeurs de l'eglise catholique, traduits en francois, sur l'edition latine des Peres Benedictins de la congregation de S. Maur\",\n", " 'Augustinus, Aurelius Heiliger 354-430', nan, 1693.0, nan,\n", " '1693', 'Paris', 'Paris', 'French', nan, nan, nan, nan, nan,\n", " 'Z167651701', 'Z167651701_00000001.jpg', 'B', 0.0008314285660162,\n", " 0.9985696077346802, 0.0003245634725317, 0.0002743884397204,\n", " 'blue', 0.9836959838867188, 0.0060312687419354,\n", " 0.0102726686745882]], dtype=object)" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "BE_manual[BE_manual['Signatur'].str.contains('BE.1.T.33')].values" ] }, { "cell_type": "code", "execution_count": 77, "id": "c0f4a42a-7e21-41e8-833c-2dd2f9d1985e", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1\n" ] }, { "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", "
volumepage numbercategorysubcategoryformathandwritten page numberentry_IDentrycleaned entry
350814.37798PoëticaPoëtæ Gallici unà cum DramaticisOctavo und kleiner50214.377_098_09Poësies de Jacques Poille. Paris. 1623. Th. Blaise n. 1257.Poesies de Jacques Poille Paris 1623 Th Blaise n 1257
\n", "
" ], "text/plain": [ " volume page number category subcategory \n", "3508 14.377 98 Poëtica Poëtæ Gallici unà cum Dramaticis \\\n", "\n", " format handwritten page number entry_ID \n", "3508 Octavo und kleiner 502 14.377_098_09 \\\n", "\n", " entry \n", "3508 Poësies de Jacques Poille. Paris. 1623. Th. Blaise n. 1257. \\\n", "\n", " cleaned entry \n", "3508 Poesies de Jacques Poille Paris 1623 Th Blaise n 1257 " ] }, "execution_count": 77, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def search_in_entry(df, string):\n", " return df[df['cleaned entry'].str.contains(string)]\n", "\n", "info = search_in_entry(search_in_entry(entry_df, 'Poille'), '')\n", "print(len(info))\n", "info" ] }, { "cell_type": "code", "execution_count": 368, "id": "c4394718-cfd3-459e-8923-3ef255a41012", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "volume 14.377\n", "page number 28\n", "category Poëtica\n", "subcategory Poëtæ Græci\n", "format Octavo und kleiner\n", "handwritten page number 436\n", "entry_ID 14.377_028_02\n", "entry ..........Le Plutus & Les Nuéces du même trad. du grec par Mad.elle Anne le Fevre. 12.° Paris. 1684. Thierry. n. 1062.\n", "cleaned entry Le Plutus & Les Nueces du meme trad du grec par Madelle Anne le Fevre 12° Paris 1684 Thierry n 1062\n", "Name: 2857, dtype: object" ] }, "execution_count": 368, "metadata": {}, "output_type": "execute_result" } ], "source": [ "entry_df.loc[2857]" ] }, { "cell_type": "code", "execution_count": 414, "id": "20facf5d-d609-498e-9907-7ebdffc09e15", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "BE.6.S.66\n", "+Z201401009\n", "Florus Danicus ; Otthiniae Impressus a Christiano Schrödero, Anno 1698\n", "Bering, Vitus 1617-1675\n", "Tyrnaviae\n", "1716\n", "N\n" ] }, { "data": { "text/plain": [ "Signatur BE.6.S.66\n", "Barcode +Z201401009\n", "Titel Florus Danicus ; Otthiniae Impressus a Christiano Schrödero, Anno 1698\n", "Autor Bering, Vitus 1617-1675\n", "Mitwirkender NaN\n", "Anfang Veröffentlichungsdatum 1716.0\n", "Ende Veröffentlichungsdatum NaN\n", "Veröffentlichungsdatum 1716\n", "Veröffentlichungsort Tyrnaviae\n", "Veröffentlichungsort (normiert) Tyrnau\n", "Sprache Latin\n", "Schlagwörter Dänemark; Geschichte\n", "Schlagwörter (mit GND) Dänemark$Dg--(DE-588)4010877-6;Geschichte$Az;AT-OBV--ONB-AK\n", "Vorbesitzer NaN\n", "Typ NaN\n", "Bemerkungen NaN\n", "Gültiger Barcode Z201401009\n", "Dateiname Z201401009_00000001.jpg\n", "Wappenklassifizierung N\n", "p_A 0.022146\n", "p_B 0.008077\n", "p_C 0.014462\n", "p_N 0.955316\n", "Farbklassifizierung NaN\n", "p_blue NaN\n", "p_red NaN\n", "p_yellow NaN\n", "Name: 15975, dtype: object" ] }, "execution_count": 414, "metadata": {}, "output_type": "execute_result" } ], "source": [ "BE_entry = BE_df.loc[15975]\n", "print(BE_entry['Signatur'])\n", "print(BE_entry['Barcode'])\n", "print(BE_entry['Titel'])\n", "print(BE_entry['Autor'])\n", "print(BE_entry['Veröffentlichungsort'])\n", "print(BE_entry['Veröffentlichungsdatum'])\n", "print(BE_entry['Wappenklassifizierung'])\n", "BE_entry" ] }, { "cell_type": "markdown", "id": "a499f1aa-20d8-4e5c-9386-abd2b7023974", "metadata": {}, "source": [ "# Create Matching data\n", "\n", "## Match from existing catalogue data for BE signatures. Combine author (+ printer etc), title, year and place and try to match it with an entry in the handwritten catalogue." ] }, { "cell_type": "code", "execution_count": null, "id": "f5388945-7294-420a-a524-c3372e3c761d", "metadata": { "tags": [] }, "outputs": [], "source": [ "better_matches = []\n", "scorer = thefuzz.fuzz.token_set_ratio\n", "\n", "for index, row in tqdm.notebook.tqdm(BE_manual.iterrows(), total=len(BE_manual)):\n", " keys = ['Autor', 'Mitwirkender', 'Titel', 'Veröffentlichungsort', 'Anfang Veröffentlichungsdatum']\n", " comb_string = ''\n", " for key in keys:\n", " val = row[key]\n", " if not pd.isna(val):\n", " if key == 'Autor' or key == 'Mitwirkender':\n", " if ',' in val: # falls name, vorname\n", " val = val.split(',')[0]\n", " val = val.split(' ')[0]\n", " elif key == 'Titel':\n", " val = prepare_string(val)\n", " elif key == 'Anfang Veröffentlichungsdatum':\n", " val = str(int(val))\n", " else: # key == 'Veröffentlichungsort'\n", " pass\n", " comb_string += val + ' '\n", " \n", " matches_lis = thefuzz.process.extract(comb_string, entry_df['cleaned entry'], scorer=scorer, limit=5)\n", " flat_matches = []\n", " for match in matches_lis:\n", " flat_matches.append(match[0])\n", " flat_matches.append(match[1])\n", " flat_matches.append(match[2])\n", " better_matches.append([comb_string] + flat_matches)\n", "\n", "matches_df = pd.DataFrame(better_matches, columns=['input', 'match_1', 'score_1', 'id_1', 'match_2', 'score_2', 'id_2', 'match_3', 'score_3', 'id_3', 'match_4', 'score_4', 'id_4', 'match_5', 'score_5', 'id_5'])\n", "matches_df['control'] = ''\n", "matches_df" ] }, { "cell_type": "code", "execution_count": null, "id": "e0f42259-6df9-4e3b-80e1-1dbe4642545c", "metadata": { "tags": [] }, "outputs": [], "source": [ "matches_df_no_score = matches_df.drop(['score_1', 'score_2', 'score_3', 'score_4', 'score_5'], axis=1)\n", "matches_df_no_score.insert(1, 'input_id', BE_manual.index)\n", "matches_df_no_score" ] }, { "cell_type": "code", "execution_count": 749, "id": "51aae223-d87e-4fa0-8a97-25c33b7c8d65", "metadata": { "tags": [] }, "outputs": [], "source": [ "# Export in batches of 1000\n", "matches_df_no_score[:1000].to_excel('../Daten/Katalogabgleich/Kandidaten/Kandidaten_1000.xlsx', index=False)\n", "matches_df_no_score[1000:2000].to_excel('../Daten/Katalogabgleich/Kandidaten/Kandidaten_2000.xlsx', index=False)\n", "matches_df_no_score[2000:3000].to_excel('../Daten/Katalogabgleich/Kandidaten/Kandidaten_3000.xlsx', index=False)\n", "matches_df_no_score[3000:4000].to_excel('../Daten/Katalogabgleich/Kandidaten/Kandidaten_4000.xlsx', index=False)\n", "matches_df_no_score[4000:5000].to_excel('../Daten/Katalogabgleich/Kandidaten/Kandidaten_5000.xlsx', index=False)\n", "matches_df_no_score[5000:6000].to_excel('../Daten/Katalogabgleich/Kandidaten/Kandidaten_6000.xlsx', index=False)\n", "matches_df_no_score[6000:7000].to_excel('../Daten/Katalogabgleich/Kandidaten/Kandidaten_7000.xlsx', index=False)\n", "matches_df_no_score[7000:8000].to_excel('../Daten/Katalogabgleich/Kandidaten/Kandidaten_8000.xlsx', index=False)\n", "matches_df_no_score[8000:].to_excel('../Daten/Katalogabgleich/Kandidaten/Kandidaten_8756.xlsx', index=False)" ] }, { "cell_type": "code", "execution_count": 3, "id": "68eb5b1e-a23b-4014-aa7d-903878c14a3d", "metadata": {}, "outputs": [], "source": [ "non_BE = BE_df[~BE_df['Signatur'].str.contains('BE')]\n", "non_BE_wappen = non_BE[~non_BE['Wappenklassifizierung'].isna()]" ] }, { "cell_type": "code", "execution_count": 34, "id": "d34f7a91-6f09-4c93-8376-105dc804764f", "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", "
SignaturWappenklassifizierungBarcodeMitwirkender
22595Be.10.J.38.(Vol.1,1)N+Z17136510XCotta; Nees von Esenbeck, Christian Gottfried Daniel 1776-1858; Eschweiler, Franz Gerhard 1796-1831
22599Be.5.Q.69.(Vol.5)N+Z197357203NaN
2261222.M.23B+Z43165504Manuzio, Aldo Pio 1450-1515; Philostratus, Flavius 160-245; Eusebius Caesariensis 260-339; Rinuccinus, Alemannus 1426-1504; Acciaiuoli, Zanobi 1461-1519; Ευσεβιος Καισαρειας
2261322.N.14B+Z221977709Manuzio, Paolo; Manuzio, Paolo 1512-1574
2261422.N.27 (Vol.1)B+Z43162801Manuzio, Aldo Pio 1450-1515; Theophanes Confessor 752-817; Cosmas Hierosolymitanus -781; Marcus de Idronto ca. um 770; Johannes Damascenus 675-749; Clarius, Daniel ca. 15./16. Jh.
2261522.N.67B+Z221954400Manuzio, Paolo 1512-1574; Auria, Andrea <<d'>>
2261622.Q.37N+Z22196790XAsulanus, Franciscus -1546; Aldo Manuzio Senior Haeredes; Carloni, Antonio
2261860164-D.1A+Z194791901NaN
2261960164-D.2A+Z254932002NaN
\n", "
" ], "text/plain": [ " Signatur Wappenklassifizierung Barcode \\\n", "22595 Be.10.J.38.(Vol.1,1) N +Z17136510X \n", "22599 Be.5.Q.69.(Vol.5) N +Z197357203 \n", "22612 22.M.23 B +Z43165504 \n", "22613 22.N.14 B +Z221977709 \n", "22614 22.N.27 (Vol.1) B +Z43162801 \n", "22615 22.N.67 B +Z221954400 \n", "22616 22.Q.37 N +Z22196790X \n", "22618 60164-D.1 A +Z194791901 \n", "22619 60164-D.2 A +Z254932002 \n", "\n", " Mitwirkender \n", "22595 Cotta; Nees von Esenbeck, Christian Gottfried Daniel 1776-1858; Eschweiler, Franz Gerhard 1796-1831 \n", "22599 NaN \n", "22612 Manuzio, Aldo Pio 1450-1515; Philostratus, Flavius 160-245; Eusebius Caesariensis 260-339; Rinuccinus, Alemannus 1426-1504; Acciaiuoli, Zanobi 1461-1519; Ευσεβιος Καισαρειας \n", "22613 Manuzio, Paolo; Manuzio, Paolo 1512-1574 \n", "22614 Manuzio, Aldo Pio 1450-1515; Theophanes Confessor 752-817; Cosmas Hierosolymitanus -781; Marcus de Idronto ca. um 770; Johannes Damascenus 675-749; Clarius, Daniel ca. 15./16. Jh. \n", "22615 Manuzio, Paolo 1512-1574; Auria, Andrea <> \n", "22616 Asulanus, Franciscus -1546; Aldo Manuzio Senior Haeredes; Carloni, Antonio \n", "22618 NaN \n", "22619 NaN " ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "non_BE_wappen[['Signatur', 'Wappenklassifizierung', 'Barcode', 'Mitwirkender']]" ] }, { "cell_type": "code", "execution_count": 33, "id": "512515e9-84a4-4e97-a16d-2f28df90abde", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['Signatur', 'Barcode', 'Titel', 'Autor', 'Mitwirkender',\n", " 'Anfang Veröffentlichungsdatum', 'Ende Veröffentlichungsdatum',\n", " 'Veröffentlichungsdatum', 'Veröffentlichungsort',\n", " 'Veröffentlichungsort (normiert)', 'Sprache', 'Schlagwörter',\n", " 'Schlagwörter (mit GND)', 'Vorbesitzer', 'Typ', 'Bemerkungen',\n", " 'Gültiger Barcode', 'Dateiname', 'Wappenklassifizierung', 'p_A', 'p_B',\n", " 'p_C', 'p_N', 'Farbklassifizierung', 'p_blue', 'p_red', 'p_yellow'],\n", " dtype='object')" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "non_BE_wappen.columns" ] }, { "cell_type": "code", "execution_count": 79, "id": "b8de2583-c260-46df-ab7c-15b4feff0a33", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['filename', 'prediction', 'p_A', 'p_B', 'p_C', 'p_N', 'color', 'p_blue',\n", " 'p_red', 'p_yellow', 'man_prediction', 'man_color', 'valid_bc',\n", " 'Permanent Call Number', '992', '993', '695', '866',\n", " 'Library Code (Active)', 'Location Code', 'Barcode', 'Item Call Number',\n", " 'Title', 'Author', 'Author (contributor)', 'Begin Publication Date',\n", " 'End Publication Date', 'Publication Date', 'Publication Place',\n", " 'Publisher', 'Unnamed: 17', 'MMS Id', '856', 'Subjects',\n", " 'Subjects (Names)'],\n", " dtype='object')" ] }, "execution_count": 79, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pred = pd.read_csv('../Daten/Vorhersagen/catalogue_pred_combined.csv')\n", "pred.columns" ] }, { "cell_type": "code", "execution_count": 80, "id": "042eb3f3-6d53-4403-a230-513d36ea8b44", "metadata": {}, "outputs": [], "source": [ "no_sign_wappen = pred[pred['Permanent Call Number'].isna()]" ] }, { "cell_type": "code", "execution_count": 81, "id": "87462bd0-ad17-4ea5-9486-f4b23605d74d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "803" ] }, "execution_count": 81, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(no_sign_wappen)" ] }, { "cell_type": "code", "execution_count": 82, "id": "d7326106-193b-4841-ac3c-becae1b27ddf", "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
filenamepredictionp_Ap_Bp_Cp_Ncolorp_bluep_redp_yellow...Begin Publication DateEnd Publication DatePublication DatePublication PlacePublisherUnnamed: 17MMS Id856SubjectsSubjects (Names)
0Z103519105_00000001.jpgA0.9985980.0004450.0004000.000558red0.0004190.9977300.001851...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
4Z10353460X_00000001.jpgA0.9947110.0023870.0016790.001224red0.0025590.9825440.014897...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
13Z105561605_00000001.jpgB0.0001420.9995900.0000700.000198red0.0005020.9955070.003991...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
16Z137115906_00000001.jpgA0.9977220.0013120.0004610.000505blue0.9931580.0037760.003066...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
17Z13711690X_00000001.jpgA0.9994520.0001850.0001490.000213blue0.9942730.0053530.000374...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
..................................................................
6154Z260077107_00000001.jpgB0.0002480.9984840.0004420.000827red0.0002130.9943170.005469...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
6155Z43162801_00000001.jpgB0.0006840.9976340.0011800.000502red0.0014500.9971980.001353...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
6156Z43163301_00000001.jpgB0.0008720.9981390.0005830.000406red0.0003310.9984730.001197...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
6157Z43165504_00000001.jpgB0.0006700.9983240.0005600.000445red0.0011880.9963740.002438...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
6158Z43169509_00000001.jpgA0.9951560.0017110.0021910.000941red0.0001200.9997100.000170...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
\n", "

803 rows × 35 columns

\n", "
" ], "text/plain": [ " filename prediction p_A p_B p_C \\\n", "0 Z103519105_00000001.jpg A 0.998598 0.000445 0.000400 \n", "4 Z10353460X_00000001.jpg A 0.994711 0.002387 0.001679 \n", "13 Z105561605_00000001.jpg B 0.000142 0.999590 0.000070 \n", "16 Z137115906_00000001.jpg A 0.997722 0.001312 0.000461 \n", "17 Z13711690X_00000001.jpg A 0.999452 0.000185 0.000149 \n", "... ... ... ... ... ... \n", "6154 Z260077107_00000001.jpg B 0.000248 0.998484 0.000442 \n", "6155 Z43162801_00000001.jpg B 0.000684 0.997634 0.001180 \n", "6156 Z43163301_00000001.jpg B 0.000872 0.998139 0.000583 \n", "6157 Z43165504_00000001.jpg B 0.000670 0.998324 0.000560 \n", "6158 Z43169509_00000001.jpg A 0.995156 0.001711 0.002191 \n", "\n", " p_N color p_blue p_red p_yellow ... \\\n", "0 0.000558 red 0.000419 0.997730 0.001851 ... \n", "4 0.001224 red 0.002559 0.982544 0.014897 ... \n", "13 0.000198 red 0.000502 0.995507 0.003991 ... \n", "16 0.000505 blue 0.993158 0.003776 0.003066 ... \n", "17 0.000213 blue 0.994273 0.005353 0.000374 ... \n", "... ... ... ... ... ... ... \n", "6154 0.000827 red 0.000213 0.994317 0.005469 ... \n", "6155 0.000502 red 0.001450 0.997198 0.001353 ... \n", "6156 0.000406 red 0.000331 0.998473 0.001197 ... \n", "6157 0.000445 red 0.001188 0.996374 0.002438 ... \n", "6158 0.000941 red 0.000120 0.999710 0.000170 ... \n", "\n", " Begin Publication Date End Publication Date Publication Date \\\n", "0 NaN NaN NaN \n", "4 NaN NaN NaN \n", "13 NaN NaN NaN \n", "16 NaN NaN NaN \n", "17 NaN NaN NaN \n", "... ... ... ... \n", "6154 NaN NaN NaN \n", "6155 NaN NaN NaN \n", "6156 NaN NaN NaN \n", "6157 NaN NaN NaN \n", "6158 NaN NaN NaN \n", "\n", " Publication Place Publisher Unnamed: 17 MMS Id 856 Subjects \\\n", "0 NaN NaN NaN NaN NaN NaN \n", "4 NaN NaN NaN NaN NaN NaN \n", "13 NaN NaN NaN NaN NaN NaN \n", "16 NaN NaN NaN NaN NaN NaN \n", "17 NaN NaN NaN NaN NaN NaN \n", "... ... ... ... ... ... ... \n", "6154 NaN NaN NaN NaN NaN NaN \n", "6155 NaN NaN NaN NaN NaN NaN \n", "6156 NaN NaN NaN NaN NaN NaN \n", "6157 NaN NaN NaN NaN NaN NaN \n", "6158 NaN NaN NaN NaN NaN NaN \n", "\n", " Subjects (Names) \n", "0 NaN \n", "4 NaN \n", "13 NaN \n", "16 NaN \n", "17 NaN \n", "... ... \n", "6154 NaN \n", "6155 NaN \n", "6156 NaN \n", "6157 NaN \n", "6158 NaN \n", "\n", "[803 rows x 35 columns]" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" } ], "source": [ "no_sign_wappen" ] }, { "cell_type": "code", "execution_count": 98, "id": "07da4f64-6dbd-4a57-9122-338a9c66bf5b", "metadata": {}, "outputs": [], "source": [ "nsw = no_sign_wappen.dropna(axis=1)" ] }, { "cell_type": "code", "execution_count": 99, "id": "73c74495-9522-427a-88db-d8f1cca96cdd", "metadata": {}, "outputs": [], "source": [ "def get_content(url):\n", " retries = 0\n", " while retries < 3:\n", " try:\n", " resp = requests.get(url)\n", " if resp.status_code == 200:\n", " return resp.content\n", " else:\n", " retries += 1\n", " except requests.exceptions.Timeout:\n", " retries += 1\n", " except (requests.exceptions.TooManyRedirects, requests.exceptions.RequestException) as e:\n", " raise SystemExit(e)\n", "\n", "def extract_signature_from_manifest(bc):\n", " man_url = f'https://iiif.onb.ac.at/presentation/ABO/{bc}/manifest'\n", " metadata = json.loads(get_content(man_url))['metadata']\n", " metadata_str = json.dumps(metadata)\n", " loc_s = re.compile('(.+?)')\n", " ac_s = re.compile('AC[0-9]+')\n", " loc = loc_s.findall(metadata_str)\n", " if len(loc) > 0:\n", " loc = loc[0]\n", " else:\n", " loc = ''\n", " acnr = ac_s.findall(metadata_str)\n", " if len(acnr) > 0:\n", " acnr = acnr[0]\n", " else:\n", " acnr = ''\n", " return (loc, acnr)" ] }, { "cell_type": "code", "execution_count": 100, "id": "f4ef590d-775f-41c6-bd35-384aa9e5dd8e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('', 'AC09912489')" ] }, "execution_count": 100, "metadata": {}, "output_type": "execute_result" } ], "source": [ "extract_signature_from_manifest('Z150809200')" ] }, { "cell_type": "code", "execution_count": 101, "id": "8920d0a5-6ead-4db8-8407-cd6d4c8657e7", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/tmp/ipykernel_7044/501467936.py:4: SettingWithCopyWarning: \n", "A value is trying to be set on a copy of a slice from a DataFrame.\n", "Try using .loc[row_indexer,col_indexer] = value instead\n", "\n", "See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n", " nsw.loc[i, 'Signatur'] = sig\n", "/tmp/ipykernel_7044/501467936.py:5: SettingWithCopyWarning: \n", "A value is trying to be set on a copy of a slice from a DataFrame.\n", "Try using .loc[row_indexer,col_indexer] = value instead\n", "\n", "See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n", " nsw.loc[i, 'AC-Nummer'] = ac\n" ] } ], "source": [ "for i in nsw.index:\n", " bc = nsw.loc[i, 'valid_bc']\n", " sig, ac = extract_signature_from_manifest(bc)\n", " nsw.loc[i, 'Signatur'] = sig\n", " nsw.loc[i, 'AC-Nummer'] = ac" ] }, { "cell_type": "code", "execution_count": 105, "id": "0ae7c215-f811-4b6d-897f-55328337ead4", "metadata": {}, "outputs": [], "source": [ "nsw_no_dup = nsw.drop_duplicates('valid_bc')" ] }, { "cell_type": "code", "execution_count": 110, "id": "e3916d07-7d22-40c3-aff2-eb9823840f96", "metadata": {}, "outputs": [], "source": [ "keine_BE = nsw_no_dup.drop(['filename', 'prediction', 'p_A', 'p_B', 'p_C', 'p_N', 'color', 'p_blue', 'p_red', 'p_yellow'], axis=1)" ] }, { "cell_type": "code", "execution_count": 114, "id": "62d169f7-2bcb-431b-8f6b-76d37194abc9", "metadata": {}, "outputs": [], "source": [ "keine_BE.rename(columns={'man_prediction': 'Wappen', 'man_color': 'Einbandfarbe', 'valid_bc': 'Barcode'}, inplace=True)" ] }, { "cell_type": "code", "execution_count": 116, "id": "3cc27a7c-b960-4360-81c8-6873fc39a95e", "metadata": {}, "outputs": [], "source": [ "keine_BE = keine_BE.reindex(columns=['Barcode', 'Signatur', 'AC-Nummer', 'Wappen', 'Einbandfarbe'])" ] }, { "cell_type": "code", "execution_count": 121, "id": "f2c1a4aa-3312-4353-9767-ef0009bf35da", "metadata": {}, "outputs": [], "source": [ "keine_BE.to_excel('../Daten/Vorhersagen/Eugeniana aber nicht BE.xlsx', index=None)" ] }, { "cell_type": "markdown", "id": "054a6f0d-251d-4cc5-84b9-0d777b7d1f7c", "metadata": {}, "source": [ "# Analyze manual matching data" ] }, { "cell_type": "code", "execution_count": 78, "id": "d6efcff5-0393-4835-b673-001e85877f13", "metadata": { "tags": [] }, "outputs": [], "source": [ "manual_file_names = [\n", " 'Ausgefüllt_1000.xlsx',\n", " 'Ausgefüllt_2000.xlsx',\n", " 'Ausgefüllt_3000.xlsx',\n", " 'Ausgefüllt_4000.xlsx',\n", " 'Ausgefüllt_5000.xlsx',\n", " 'Ausgefüllt_6000.xlsx',\n", " 'Ausgefüllt_7000.xlsx',\n", " 'Ausgefüllt_8000.xlsx',\n", " 'Ausgefüllt_8756.xlsx',\n", "]\n", "\n", "manual_matches_dfs = []\n", "\n", "for fname in manual_file_names:\n", " df = pd.read_excel(f'../Daten/Katalogabgleich/Ausgefüllt/{fname}')\n", " manual_matches_dfs.append(df)\n", "\n", "man_matches = pd.concat(manual_matches_dfs, ignore_index=True)" ] }, { "cell_type": "code", "execution_count": 79, "id": "7a39c6a7-d81b-4f79-89a0-bafc96411d93", "metadata": { "tags": [] }, "outputs": [], "source": [ "has_hw_catalog = man_matches.dropna(subset=['control'])" ] }, { "cell_type": "markdown", "id": "881ea2ed-277b-46da-8f23-e3f3f56aae86", "metadata": {}, "source": [ "## Matching statistics" ] }, { "cell_type": "code", "execution_count": 81, "id": "cb7b6815-c782-4e00-bd7f-9abcf7f523f5", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "75 \n", "75 \n", "True\n" ] } ], "source": [ "def num_in_lis(num, lis_str):\n", " if pd.isna(lis_str):\n", " return False \n", " else:\n", " if isinstance(lis_str, int):\n", " lis = [lis_str]\n", " if isinstance(lis_str, str):\n", " if '?' in lis_str:\n", " return False\n", " lis = lis_str.split(', ')\n", " lis = [int(n) for n in lis]\n", " return num in lis\n", "\n", "example = man_matches.loc[9]\n", "print(example['id_1'], type(example['id_1']))\n", "print(example['control'], type(example['control']))\n", "print(num_in_lis(example['id_1'], example['control']))" ] }, { "cell_type": "code", "execution_count": 108, "id": "836d1b5e-ef2f-4ff8-9c03-298b029f73b2", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "5778 out of 8756 BE signatures from the appropriate time period were matched\n", "For 4564 matches the first one was correct\n", "For 5072 matches one of the five given ones in the table was correct\n", "124 matches have two or more mentions in the handrwitten catalog\n" ] } ], "source": [ "BE_signatures_matched = len(man_matches.dropna(subset=['control']))\n", "print(BE_signatures_matched, 'out of', len(man_matches), 'BE signatures from the appropriate time period were matched')\n", "\n", "first_matches = sum(man_matches.apply(lambda x: num_in_lis(x['id_1'], x['control']), axis=1))\n", "print('For', first_matches, 'matches the first one was correct')\n", "any_matches = sum(man_matches.apply(lambda x: num_in_lis(x['id_1'], x['control']) \n", " or num_in_lis(x['id_2'], x['control']) \n", " or num_in_lis(x['id_3'], x['control']) \n", " or num_in_lis(x['id_4'], x['control']) \n", " or num_in_lis(x['id_5'], x['control']), axis=1))\n", "print('For', any_matches, 'matches one of the five given ones in the table was correct')\n", "\n", "double_matches = man_matches['control'].str.contains(',').sum()\n", "print(double_matches, 'matches have two or more mentions in the handrwitten catalog')" ] }, { "cell_type": "code", "execution_count": 83, "id": "9f7bd1bf-a4cd-427a-b65a-5e2fce029212", "metadata": { "tags": [] }, "outputs": [], "source": [ "num_re = re.compile('\\d{1,4}(?!\\?)')\n", "all_matches = []\n", "for row in man_matches['control']:\n", " match = num_re.findall(str(row))\n", " if match:\n", " all_matches.append(match)\n", "\n", "flat_matches = [el for sublis in all_matches for el in sublis]\n", "set_matches = set(flat_matches)" ] }, { "cell_type": "code", "execution_count": 84, "id": "17434971-7462-4f00-8370-d5573f3ea72c", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "5086 entries out of 9403 entries from the handwritten catalog were matched (at least once)\n" ] }, { "data": { "text/plain": [ "[2, 4, 7, 9, 10, 11, 12, 14, 16, 18, 19, 20, 22, 25, 26, 28, 29, 32, 34, 35]" ] }, "execution_count": 84, "metadata": {}, "output_type": "execute_result" } ], "source": [ "unique_matches_int = sorted([int(n) for n in set_matches])\n", "\n", "print(len(unique_matches_int), 'entries out of', len(entry_df), 'entries from the handwritten catalog were matched (at least once)')\n", "unique_matches_int[:20]" ] }, { "cell_type": "code", "execution_count": 111, "id": "25fcabf9-fb1c-4fe7-838a-8b595f0a2673", "metadata": { "tags": [] }, "outputs": [], "source": [ "no_matches_df = entry_df.loc[entry_df.index.difference(unique_matches_int)]\n", "matches_df = entry_df.loc[unique_matches_int]" ] }, { "cell_type": "code", "execution_count": 136, "id": "24bb9a74-0e99-4760-a3d5-05f8df71f85a", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'Historia Nova Europæ': 0.48382838283828383, 'Poëtica': 0.5410273515677118, 'Paralipomena Historica': 0.5508870214752568, 'Theologia': 0.7555555555555555, 'Philologia': 0.596694214876033, 'Historia Naturalis': 0.6634615384615384, 'Historia Ecclesiastica': 0.689119170984456, 'Artes': 0.5623342175066313, 'Philosophia': 0.6542857142857142, 'Historia Antiqua': 0.3862928348909657, 'Codices Manuscripti': 0.0034129692832764505, 'Imagines Incisæ': 0.04330708661417323, 'Geographia': 0.5317460317460317, 'Iurisprudentia': 0.6715686274509803, 'Historia Nova extra Europam': 0.5577889447236181, 'Rhetorica': 0.5864197530864198, 'Mathematica': 0.7559055118110236, 'Grammatica': 0.5819672131147541, 'Medicina': 0.6330275229357798, 'Chronologia': 0.5612244897959183, 'Miscellanea Historica': 0.3877551020408163, 'Imagines Variæ Incisæ': 0.0851063829787234, 'Effigierum Incisarum Collectio': 0.0, 'Imaginum Delineatarum Collectio': 0.0}\n" ] } ], "source": [ "all_counts = entry_df['category'].value_counts()\n", "match_counts = matches_df['category'].value_counts()\n", "no_match_counts = no_matches_df['category'].value_counts()\n", "\n", "ratios = {}\n", "for cat, count in all_counts.items():\n", " matched = 0\n", " if cat in match_counts.index:\n", " matched = match_counts[cat]\n", " ratios[cat] = matched / count\n", "\n", "print(ratios)" ] }, { "cell_type": "code", "execution_count": 170, "id": "6c952698-2bc7-4511-a688-3bcd30ed8196", "metadata": { "tags": [] }, "outputs": [ { "data": { "image/png": "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MlOhQgUpX768dO7cWUJCQuS33377mPkiIiIiypAMl8wcPHhQKlSoIEOGDJECBQpImzZtZO/evR8zb0RERETvlOFgxsfHR3766SeJiYmRefPmya1bt6RmzZpStGhRGT9+vNy+fftj5pOIiIjIoEz3ZjI1NZV27drJvn375PLly9KyZUtZsGCBODk5SXBw8MfIIxEREVG63ut1BlpFixaVIUOGyPDhw8XS0lJ27tz5ofJFRERElCHv/aLJyMhI+eWXX2Tt2rWSNWtWadasmXTq1OlD5o2IiIjonTIVzNy6dUuWLFkiS5YskejoaPH19ZXZs2dLs2bNJFeuXB8rj0RERETpynAwExgYKHv37hUbGxtp27atdOzYUUqUKPEx80ZERET0ThkOZkxNTWXt2rVSr149yZo168fMExEREVGGZTiY2bRp08fMBxEREdF7+Ve9mYiIiIg+NQYzREREZNQYzBAREZFRYzBDRERERo3BDBERERk1BjNERERk1BjMEBERkVFjMENERERGjcEMERERGTUGM0RERGTUGMwQERGRUWMwQ0REREaNwQwREREZNQYzREREZNQYzBAREZFRYzBDRERERo3BDBERERk1BjNERERk1BjMEBERkVFjMENERERG7ZMGMxMmTJBKlSqJhYWF5M+fXxo2bCiXLl1SLQNAQkNDxd7eXkxNTcXf31/OnTv3iXJMREREn5tPGsxERkZKr1695MiRIxIRESHJyclSq1YtefHihbLM5MmTZfr06TJnzhyJiooSOzs7CQwMlOfPn3/CnBMREdHnItunXPmOHTtUfy9evFjy588vJ06ckGrVqgkAmTlzpgwfPlwaN24sIiJLly4VW1tbWbFihXTr1u1TZJuIiIg+I59Vm5m4uDgREcmbN6+IiERHR0tMTIzUqlVLWcbExET8/Pzk0KFDBtNITEyUZ8+eqT5ERET05fpsghkA0r9/f6lSpYqUKVNGRERiYmJERMTW1la1rK2trTIvrQkTJoiVlZXycXBw+LgZJyIiok/qswlmevfuLWfOnJGVK1fqzdNoNKq/AehN0xo6dKjExcUpn1u3bn2U/BIREdHn4ZO2mdH65ptvZNOmTfLnn39KoUKFlOl2dnYi8qaEpkCBAsr0Bw8e6JXWaJmYmIiJicnHzTARERF9Nj5pyQwA6d27t6xbt0727NkjTk5OqvlOTk5iZ2cnERERyrSkpCSJjIwUX1/f/3V2iYiI6DP0SUtmevXqJStWrJCNGzeKhYWF0g7GyspKTE1NRaPRSN++fSUsLExcXFzExcVFwsLCxMzMTEJCQj5l1omIiOgz8UmDmXnz5omIiL+/v2r64sWLpX379iIiMmjQIElISJCePXtKbGyseHl5SXh4uFhYWPyPc0tERESfo08azAB45zIajUZCQ0MlNDT042eIiIiIjM5n05uJiIiI6H0wmCEiIiKjxmCGiIiIjBqDGSIiIjJqDGaIiIjIqDGYISIiIqPGYIaIiIiMGoMZIiIiMmoMZoiIiMioMZghIiIio8ZghoiIiIwagxkiIiIyagxmiIiIyKgxmCEiIiKjxmCGiIiIjBqDGSIiIjJqDGaIiIjIqDGYISIiIqPGYIaIiIiMGoMZIiIiMmoMZoiIiMioMZghIiIio8ZghoiIiIwagxkiIiIyagxmiIiIyKgxmCEiIiKjxmCGiIiIjBqDGSIiIjJqDGaIiIjIqDGYISIiIqPGYIaIiIiMGoMZIiIiMmoMZoiIiMioMZghIiIio8ZghoiIiIwagxkiIiIyap80mPnzzz+lfv36Ym9vLxqNRjZs2KCaD0BCQ0PF3t5eTE1Nxd/fX86dO/dpMktERESfpU8azLx48ULKli0rc+bMMTh/8uTJMn36dJkzZ45ERUWJnZ2dBAYGyvPnz//HOSUiIqLPVbZPufKgoCAJCgoyOA+AzJw5U4YPHy6NGzcWEZGlS5eKra2trFixQrp16/a/zCoRERF9pj7bNjPR0dESExMjtWrVUqaZmJiIn5+fHDp0KN3vJSYmyrNnz1QfIiIi+nJ9tsFMTEyMiIjY2tqqptva2irzDJkwYYJYWVkpHwcHh4+aTyIiIvq0PttgRkuj0aj+BqA3TdfQoUMlLi5O+dy6detjZ5GIiIg+oU/aZuZt7OzsRORNCU2BAgWU6Q8ePNArrdFlYmIiJiYmHz1/RERE9Hn4bEtmnJycxM7OTiIiIpRpSUlJEhkZKb6+vp8wZ0RERPQ5+aQlM/Hx8XLlyhXl7+joaDl16pTkzZtXChcuLH379pWwsDBxcXERFxcXCQsLEzMzMwkJCfmEuSYiIqLPyScNZo4fPy4BAQHK3/379xcRkXbt2smSJUtk0KBBkpCQID179pTY2Fjx8vKS8PBwsbCw+FRZJiIios/MJw1m/P39BUC68zUajYSGhkpoaOj/LlNERERkVD7bBsBERET/huOQre/93esT637AnNDH9tk2ACYiIiLKCAYzREREZNQYzBAREZFRYzBDRERERo3BDBERERk1BjNERERk1BjMEBERkVFjMENERERGjcEMERERGTUGM0RERGTUGMwQERGRUWMwQ0REREaNwQwREREZNQYzREREZNQYzBAREZFRYzBDRERERo3BDBERERk1BjNERERk1LJ96gwQERF9zhyHbP1X378+se4HygmlhyUzREREZNQYzBAREZFRYzBDRERERo3BDBERERk1BjNERERk1BjMEBERkVFjMENERERGjcEMERERGTUGM0RERGTUGMwQERGRUWMwQ0REREaNwQwREREZNQYzREREZNQYzBAREZFRYzBDRERERs0ogpkff/xRnJycJGfOnOLh4SH79+//1FkiIiKiz8RnH8ysXr1a+vbtK8OHD5e//vpLqlatKkFBQXLz5s1PnTUiIiL6DHz2wcz06dOlU6dO0rlzZylVqpTMnDlTHBwcZN68eZ86a0RERPQZyPapM/A2SUlJcuLECRkyZIhqeq1ateTQoUMGv5OYmCiJiYnK33FxcSIi8uzZs4+Sx9TEl+/93bR5+lBp/Zt0/gtpfaz9zrSYFtP6MtP6kNeuMqN3/qu0/h5T+19935ho9xuAdy+Mz9idO3cgIjh48KBq+vjx41G8eHGD3xk9ejREhB9++OGHH374+QI+t27deme88FmXzGhpNBrV3wD0pmkNHTpU+vfvr/ydmpoqT548EWtr63S/8zE8e/ZMHBwc5NatW2Jpacm0mBbT+gLS+hzzxLSYljGllRkA5Pnz52Jvb//OZT/rYCZfvnySNWtWiYmJUU1/8OCB2NraGvyOiYmJmJiYqKblzp37Y2XxnSwtLT/Yj8+0mBbT+jzS+hzzxLSYljGllVFWVlYZWu6zbgCcI0cO8fDwkIiICNX0iIgI8fX1/US5IiIios/JZ10yIyLSv39/adOmjVSsWFF8fHxk4cKFcvPmTenevfunzhoRERF9Bj77YKZ58+by+PFj+f777+XevXtSpkwZ2bZtmxQpUuRTZ+2tTExMZPTo0XpVXkyLaTEt403rc8wT02JaxpTWx6IBMtLniYiIiOjz9Fm3mSEiIiJ6FwYzREREZNQYzBAREZFRYzBDRERERo3BDBERERk1BjNEREQfQcOGDaVHjx6fOhv/CeyaTf8Tb3ufFlFmfcjj6b9wbKampkqWLFneOc2YfajfMb398j7pnz59WkqVKiU5cuT41/n8Lxyn/8aXcyQbkdTU1A+WljYWffHiheo1858Dbd6OHTsmO3bs+Kzyxxg+Y7T76cKFC3Lt2rUPeuy+r9TUVOWiHhcXJ0+fPv0gaV2/fl3OnTsnCQkJHyKb/9qHOkZ1b86nT5+WY8eOybVr1977hioicv/+fbl8+bLEx8dLSkrKe+frQ9H9HV++fClPnjx573S0++ro0aOyY8cOOXDggCQmJopGo8n0tpYtW1Zy5Mghs2bNEi8vLxF58+LkzP62utv39OlTuX//fqa+byi9Lw2DmX/pfQ5K7cmyY8cO+fHHH2Xjxo1y9erV91q3RqORrVu3SoMGDcTX11caNmwoR48eldevX2c6vQ8dZGk0Glm3bp0EBQXJqVOn5PHjx++dlu6/af//b9N63/TS218faj/+2238EOvXaDSyYcMGqV27tmzfvv29f8MPua+058+oUaOkRo0aUrVqVZk5c+Z75Umb1siRI6Vx48ZSsWJFCQkJkfnz52c6PRHD+/59jy3tzevJkyeSkJAgSUlJmU4PgLKNw4cPlyZNmkiHDh3E29tb+vXrJ+fPn89UWtrjoU6dOlKtWjWpU6eOTJo0SZ4/f56JrVPv+71798qqVavkwIED7xWY6m7juHHjpGnTplKiRAnp27evrFq1KlNpadMZMmSIdOzYUXr16iWjRo0SX19fefnypWTNmvW98leuXDm5ceOGBAcHi0jmAhrd7RszZozUr19fSpQoIa1atZKff/450/nR3fc//fST9O/fXzp06CDr169/7yDwswDKkNTUVADA9evXcfLkSURHR+PVq1cAgJSUlEylAQCDBg1C4cKFUb58efj4+KB69eo4evRopvO1adMmWFhYYMiQIdi1axfKli0LX19frFmzBklJSRlOR3cbtm3bhrlz52LTpk24evVqpvKjm86uXbtgaWmJn376SdlXAPD69ev3Si82NhaJiYnKdmV0v2tp9//evXvRv39/tG/fHr/88gueP3+e6fR0l925cyd++eUXrFu3Do8ePfpXeXv8+DHu3LljcF5m0jl8+DAmTZqEyZMnY+/evZnKi66tW7ciV65cmDt3LmJiYvTm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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sorted_ratios = sorted(ratios.items(), key=lambda x: x[1], reverse=True)\n", "n, r = list(zip(*sorted_ratios))\n", "\n", "fix, ax = plt.subplots()\n", "ax.bar(n, [100 * ratio for ratio in r])\n", "plt.xticks(rotation=45, ha='right')\n", "ax.set_ylabel('Vollständigkeit [%]')\n", "ax.set_title('Verbindung von hs. Katalog und mod. Katalog')\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "b49f3686-efd3-478b-b493-b69b60ce3ad4", "metadata": {}, "source": [ "## Add new matching data to existing catalogue data" ] }, { "cell_type": "code", "execution_count": 171, "id": "c52f2098-221b-4912-841a-d54e25788143", "metadata": { "tags": [] }, "outputs": [], "source": [ "BE_df = pd.read_excel('../Daten/Vorhersagen/WIP_complete_BE.xlsx', index_col=0)" ] }, { "cell_type": "code", "execution_count": 172, "id": "32d281c0-4015-4913-a5ec-da22c6a9c8ad", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "Index(['Barcode', 'Titel', 'Autor', 'Mitwirkender',\n", " 'Anfang Veröffentlichungsdatum', 'Ende Veröffentlichungsdatum',\n", " 'Veröffentlichungsdatum', 'Veröffentlichungsort',\n", " 'Veröffentlichungsort (normiert)', 'Sprache', 'Schlagwörter',\n", " 'Schlagwörter (mit GND)', 'Vorbesitzer', 'Typ', 'Bemerkungen',\n", " 'Gültiger Barcode', 'Dateiname', 'Wappenklassifizierung', 'p_A', 'p_B',\n", " 'p_C', 'p_N', 'Farbklassifizierung', 'p_blue', 'p_red', 'p_yellow',\n", " 'hs. Katalog', 'hs. Katalog Konfidenz', 'hs. Katalogband',\n", " 'hs. Katalogseite Digitalisat', 'Wissensklasse', 'Wissensunterklasse',\n", " 'Formatangabe', 'hs. Katalogseite Handschrift', 'hs. Katalogeintrag ID',\n", " 'hs. Katalogeintrag', 'hs. Katalog Image URL', 'identifier',\n", " 'ABO-Barcode'],\n", " dtype='object')" ] }, "execution_count": 172, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# volume \tpage number \tcategory \tsubcategory \tformat \thandwritten page number \tentry_ID \tentry \t\n", "BE_df['hs. Katalog'] = 0\n", "\n", "BE_df.columns" ] }, { "cell_type": "code", "execution_count": 173, "id": "0ddd0ffe-3546-43fb-90ff-1d7206af138e", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "Index(['volume', 'page number', 'category', 'subcategory', 'format',\n", " 'handwritten page number', 'entry_ID', 'entry', 'cleaned entry'],\n", " dtype='object')" ] }, "execution_count": 173, "metadata": {}, "output_type": "execute_result" } ], "source": [ "entry_df.columns" ] }, { "cell_type": "code", "execution_count": null, "id": "b8d40359-5eba-49e6-b2a6-3bc37786dd4c", "metadata": { "tags": [] }, "outputs": [], "source": [ "dod_id = {\n", " '14.376': 51202, \n", " '14.377': 51184,\n", " '14.378': 51219\n", "}\n", "\n", "for i, entry in has_hw_catalog.iterrows():\n", " man_match = str(entry['control'])\n", " match_regex = re.compile('\\d{1,4}')\n", " matches = match_regex.findall(man_match)\n", " if matches:\n", " first_match_id = int(matches[0])\n", " corr_entry = entry_df.loc[first_match_id]\n", " BE_id = entry['input_id']\n", " BE_df.at[BE_id, 'hs. Katalog'] = 1\n", " if '?' not in man_match:\n", " BE_df.at[BE_id, 'hs. Katalog Konfidenz'] = 'sicher'\n", " else:\n", " BE_df.at[BE_id, 'hs. Katalog Konfidenz'] = 'unsicher'\n", " BE_df.at[BE_id, 'hs. Katalogband'] = str(corr_entry['volume'])\n", " BE_df.at[BE_id, 'hs. Katalogseite Digitalisat'] = corr_entry['page number']\n", " BE_df.at[BE_id, 'Wissensklasse'] = corr_entry['category']\n", " BE_df.at[BE_id, 'Wissensunterklasse'] = corr_entry['subcategory']\n", " BE_df.at[BE_id, 'Formatangabe'] = corr_entry['format']\n", " BE_df.at[BE_id, 'hs. Katalogseite Handschrift'] = corr_entry['handwritten page number']\n", " BE_df.at[BE_id, 'hs. Katalogeintrag ID'] = corr_entry['entry_ID']\n", " BE_df.at[BE_id, 'hs. Katalogeintrag'] = corr_entry['entry']\n", " BE_df.at[BE_id, 'hs. Katalog Image URL'] = f\"https://iiif.onb.ac.at/images/DOD/{dod_id[str(corr_entry['volume'])]}/{corr_entry['page number']:08}.jp2/full/full/0/native.jpg\"" ] }, { "cell_type": "code", "execution_count": 91, "id": "4ed3c187-ab7a-419a-8530-386a69143b3d", "metadata": { "tags": [] }, "outputs": [], "source": [ "# BE_df.to_excel('../Daten/Vorhersagen/Katalogauszug, Vorhersagen und hs. Katalogverbindungen.xlsx', index=False)\n", "BE_df.to_excel('../Daten/Vorhersagen/Complete_BE.xlsx', index=False)" ] }, { "cell_type": "code", "execution_count": 92, "id": "7f5dabc1-49bf-469a-9abe-c15fa20204ce", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "Index(['Signatur', 'Barcode', 'Titel', 'Autor', 'Mitwirkender',\n", " 'Anfang Veröffentlichungsdatum', 'Ende Veröffentlichungsdatum',\n", " 'Veröffentlichungsdatum', 'Veröffentlichungsort',\n", " 'Veröffentlichungsort (normiert)', 'Sprache', 'Schlagwörter',\n", " 'Schlagwörter (mit GND)', 'Vorbesitzer', 'Typ', 'Bemerkungen',\n", " 'Gültiger Barcode', 'Dateiname', 'Wappenklassifizierung', 'p_A', 'p_B',\n", " 'p_C', 'p_N', 'Farbklassifizierung', 'p_blue', 'p_red', 'p_yellow',\n", " 'hs. Katalog', 'hs. Katalog Konfidenz', 'hs. Katalogband',\n", " 'hs. Katalogseite Digitalisat', 'Wissensklasse', 'Wissensunterklasse',\n", " 'Formatangabe', 'hs. Katalogseite Handschrift', 'hs. Katalogeintrag ID',\n", " 'hs. Katalogeintrag', 'hs. Katalog Image URL'],\n", " dtype='object')" ] }, "execution_count": 92, "metadata": {}, "output_type": "execute_result" } ], "source": [ "BE_df.columns" ] }, { "cell_type": "markdown", "id": "88b825b9-8557-441d-b387-697db4ea2a5b", "metadata": {}, "source": [ "# Eugeniana-Inkunabeln aus dem handschriftlichen Katalog extrahieren" ] }, { "cell_type": "code", "execution_count": 513, "id": "bc7c8cf5-7afa-43c1-8427-ab7cd58323b3", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1661]\n", "[1628]\n", "[1703, 5926]\n", "[1662]\n" ] } ], "source": [ "def extract_four_digit_number(entry):\n", " four_dig_re = re.compile('(?\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
volumepage numbercategorysubcategoryformathandwritten page numberentry_IDentrycleaned entryyears
314.37625TheologiaTextus & Versiones Sacræ ScripturæFolio114.376_025_034 Biblia Sacra Latina Moguntina dicta, prima omnium editio in Membranis. 2 Vol. Moguntiæ. 1462.¬ Ioan. Fust, & Petr. Schoiffer de Gerneshem. n. 2088. II.O.5.Biblia Sacra Latina Moguntina dicta prima omnium editio in Membranis 2 Vol Moguntiae 1462 Ioan Fust & Petr Schoiffer de Gerneshem n 2088 IIO5[1462]
414.37625TheologiaTextus & Versiones Sacræ ScripturæFolio114.376_025_045 Biblia Sacra Latina Moguntina, editio altera 2 Vol. chartâ Magnâ. Moguntiæ. 1472. Petr. Schoiffer. II.O.7. de Gerneshem. n. 2089.Biblia Sacra Latina Moguntina editio altera 2 Vol charta Magna Moguntiae 1472 Petr Schoiffer IIO7 de Gerneshem n 2089[1472]
614.37625TheologiaTextus & Versiones Sacræ ScripturæFolio114.376_025_067 Biblia Sacra latina vulgatæ Editionis. 2 Vol. chartâ III.B.3. Magnâ. 1474. absque loco Editionis n. 2090.Biblia Sacra latina vulgatae Editionis 2 Vol charta IIIB3 Magna 1474 absque loco Editionis n 2090[1474]
714.37625TheologiaTextus & Versiones Sacræ ScripturæFolio114.376_025_078 Biblia Sacra Latina cum Evangelistarum Canonibus III.B.7. & concordantiis. chartâ M. Coloniæ. 1479. de Homborch. n. 2093.Biblia Sacra Latina cum Evangelistarum Canonibus IIIB7 & concordantiis charta M Coloniae 1479 de Homborch n 2093[1479]
814.37626TheologiaTextus & Versiones Sacræ ScripturæFolio214.376_026_009. Biblia Sacra Latina. Venetiis. 1481. Leonard Wild de Ratisbonâ n. 2302. III. D. 11.Biblia Sacra Latina Venetiis 1481 Leonard Wild de Ratisbona n 2302 III D 11[1481]
.................................
901714.378522Codices ManuscriptiNaNQuarto134814.378_522_0553 Tractatus de Matrimonio à Fr. Lùcano Parmensi compilat. anno 1468. Ms. in Membranis. n. CCIX.Tractatus de Matrimonio a Fr Lucano Parmensi compilat anno 1468 Ms in Membranis n CCIX[1468]
903314.378523Codices ManuscriptiNaNQuarto1347*14.378_523_0968 Monita Agapæti Batilica ad Imper. Iustinian. Ms. græcè A 1500Monita Agapaeti Batilica ad Imper Iustinian Ms graece A 1500[1500]
905114.378527Codices ManuscriptiNaNOctavo und kleiner134914.378_527_0510 Succineta & accurata de scriptio Civitatis Constantinopol. a Constantino Magno anno 331. ad Sult. Mehemet II. anno 1453. cum descriptione Canalis Maris Nigri.¬ autore Ioan. Adamo Zizla. Ms. in 8.° germanicè.Succineta & accurata de scriptio Civitatis Constantinopol a Constantino Magno anno 331 ad Sult Mehemet II anno 1453 cum descriptione Canalis Maris Nigri autore Ioan Adamo Zizla Ms in 8° germanice[1453]
905214.378528Codices ManuscriptiNaNOctavo und kleiner135014.378_528_0084. I.Trionfi di Francesco Petrarca con miniature Ms. 8.° 11. Questo Ms.° è del tempo del medesimo Petrarca n. CCXXXIV. obüt Petrarca an. 1374. & codex in fine habet 1459. p. 519ITrionfi di Francesco Petrarca con miniature Ms 8° 11 Questo Ms° e del tempo del medesimo Petrarca n CCXXXIV obüt Petrarca an 1374 & codex in fine habet 1459 p 519[1374, 1459]
905914.378529Codices ManuscriptiNaNOctavo und kleiner135114.378_529_03Descriptio civitatis Constantinopoleos a Constantino M. anno 331. ad Sultanum Mehemet II. anno 1453. cum descriptione Canalis Maris Nigri. autore I. Adamo Zizla. 8.° Ms. germanicèDescriptio civitatis Constantinopoleos a Constantino M anno 331 ad Sultanum Mehemet II anno 1453 cum descriptione Canalis Maris Nigri autore I Adamo Zizla 8° Ms germanice[1453]
\n", "

366 rows × 10 columns

\n", "" ], "text/plain": [ " volume page number category \n", "3 14.376 25 Theologia \\\n", "4 14.376 25 Theologia \n", "6 14.376 25 Theologia \n", "7 14.376 25 Theologia \n", "8 14.376 26 Theologia \n", "... ... ... ... \n", "9017 14.378 522 Codices Manuscripti \n", "9033 14.378 523 Codices Manuscripti \n", "9051 14.378 527 Codices Manuscripti \n", "9052 14.378 528 Codices Manuscripti \n", "9059 14.378 529 Codices Manuscripti \n", "\n", " subcategory format \n", "3 Textus & Versiones Sacræ Scripturæ Folio \\\n", "4 Textus & Versiones Sacræ Scripturæ Folio \n", "6 Textus & Versiones Sacræ Scripturæ Folio \n", "7 Textus & Versiones Sacræ Scripturæ Folio \n", "8 Textus & Versiones Sacræ Scripturæ Folio \n", "... ... ... \n", "9017 NaN Quarto \n", "9033 NaN Quarto \n", "9051 NaN Octavo und kleiner \n", "9052 NaN Octavo und kleiner \n", "9059 NaN Octavo und kleiner \n", "\n", " handwritten page number entry_ID \n", "3 1 14.376_025_03 \\\n", "4 1 14.376_025_04 \n", "6 1 14.376_025_06 \n", "7 1 14.376_025_07 \n", "8 2 14.376_026_00 \n", "... ... ... \n", "9017 1348 14.378_522_05 \n", "9033 1347* 14.378_523_09 \n", "9051 1349 14.378_527_05 \n", "9052 1350 14.378_528_00 \n", "9059 1351 14.378_529_03 \n", "\n", " entry \n", "3 4 Biblia Sacra Latina Moguntina dicta, prima omnium editio in Membranis. 2 Vol. Moguntiæ. 1462.¬ Ioan. Fust, & Petr. Schoiffer de Gerneshem. n. 2088. II.O.5. \\\n", "4 5 Biblia Sacra Latina Moguntina, editio altera 2 Vol. chartâ Magnâ. Moguntiæ. 1472. Petr. Schoiffer. II.O.7. de Gerneshem. n. 2089. \n", "6 7 Biblia Sacra latina vulgatæ Editionis. 2 Vol. chartâ III.B.3. Magnâ. 1474. absque loco Editionis n. 2090. \n", "7 8 Biblia Sacra Latina cum Evangelistarum Canonibus III.B.7. & concordantiis. chartâ M. Coloniæ. 1479. de Homborch. n. 2093. \n", "8 9. Biblia Sacra Latina. Venetiis. 1481. Leonard Wild de Ratisbonâ n. 2302. III. D. 11. \n", "... ... \n", "9017 53 Tractatus de Matrimonio à Fr. Lùcano Parmensi compilat. anno 1468. Ms. in Membranis. n. CCIX. \n", "9033 68 Monita Agapæti Batilica ad Imper. Iustinian. Ms. græcè A 1500 \n", "9051 10 Succineta & accurata de scriptio Civitatis Constantinopol. a Constantino Magno anno 331. ad Sult. Mehemet II. anno 1453. cum descriptione Canalis Maris Nigri.¬ autore Ioan. Adamo Zizla. Ms. in 8.° germanicè. \n", "9052 84. I.Trionfi di Francesco Petrarca con miniature Ms. 8.° 11. Questo Ms.° è del tempo del medesimo Petrarca n. CCXXXIV. obüt Petrarca an. 1374. & codex in fine habet 1459. p. 519 \n", "9059 Descriptio civitatis Constantinopoleos a Constantino M. anno 331. ad Sultanum Mehemet II. anno 1453. cum descriptione Canalis Maris Nigri. autore I. Adamo Zizla. 8.° Ms. germanicè \n", "\n", " cleaned entry \n", "3 Biblia Sacra Latina Moguntina dicta prima omnium editio in Membranis 2 Vol Moguntiae 1462 Ioan Fust & Petr Schoiffer de Gerneshem n 2088 IIO5 \\\n", "4 Biblia Sacra Latina Moguntina editio altera 2 Vol charta Magna Moguntiae 1472 Petr Schoiffer IIO7 de Gerneshem n 2089 \n", "6 Biblia Sacra latina vulgatae Editionis 2 Vol charta IIIB3 Magna 1474 absque loco Editionis n 2090 \n", "7 Biblia Sacra Latina cum Evangelistarum Canonibus IIIB7 & concordantiis charta M Coloniae 1479 de Homborch n 2093 \n", "8 Biblia Sacra Latina Venetiis 1481 Leonard Wild de Ratisbona n 2302 III D 11 \n", "... ... \n", "9017 Tractatus de Matrimonio a Fr Lucano Parmensi compilat anno 1468 Ms in Membranis n CCIX \n", "9033 Monita Agapaeti Batilica ad Imper Iustinian Ms graece A 1500 \n", "9051 Succineta & accurata de scriptio Civitatis Constantinopol a Constantino Magno anno 331 ad Sult Mehemet II anno 1453 cum descriptione Canalis Maris Nigri autore Ioan Adamo Zizla Ms in 8° germanice \n", "9052 ITrionfi di Francesco Petrarca con miniature Ms 8° 11 Questo Ms° e del tempo del medesimo Petrarca n CCXXXIV obüt Petrarca an 1374 & codex in fine habet 1459 p 519 \n", "9059 Descriptio civitatis Constantinopoleos a Constantino M anno 331 ad Sultanum Mehemet II anno 1453 cum descriptione Canalis Maris Nigri autore I Adamo Zizla 8° Ms germanice \n", "\n", " years \n", "3 [1462] \n", "4 [1472] \n", "6 [1474] \n", "7 [1479] \n", "8 [1481] \n", "... ... \n", "9017 [1468] \n", "9033 [1500] \n", "9051 [1453] \n", "9052 [1374, 1459] \n", "9059 [1453] \n", "\n", "[366 rows x 10 columns]" ] }, "execution_count": 526, "metadata": {}, "output_type": "execute_result" } ], "source": [ "before_1501" ] }, { "cell_type": "code", "execution_count": 527, "id": "740e1929-f137-4853-82db-3d90905beed4", "metadata": { "tags": [] }, "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", "
volumepage numbercategorysubcategoryformathandwritten page numberentry_IDentrycleaned entryyears
514.37625TheologiaTextus & Versiones Sacræ ScripturæFolio114.376_025_056 Biblia Sacra Latina cum glossa & Comment. 4 Vol. chartâ Magnâ. Editio perantiqua sine loco & II.O.1. anno n. 2086.Biblia Sacra Latina cum glossa & Comment 4 Vol charta Magna Editio perantiqua sine loco & IIO1 anno n 2086[]
1714.37627TheologiaTextus & Versiones Sacræ ScripturæFolio314.376_027_0218 La S.e Bible historiée dite d'Escholatre avec des fig. gravées en bois. 2 Vol. sans datte. Barthel. Verard. n. 165.La Se Bible historiee dite d'Escholatre avec des fig gravees en bois 2 Vol sans datte Barthel Verard n 165[]
2114.37627TheologiaTextus & Versiones Sacræ ScripturæFolio314.376_027_0622 Biblia Sacra germanicè Mss. in Membranis cum figuris pictis. n. II.Biblia Sacra germanice Mss in Membranis cum figuris pictis n II[]
2214.37627TheologiaTextus & Versiones Sacræ ScripturæFolio314.376_027_0723 Biblia Sacra Hollandicé Mss. in Membranis cum fig. pictis. 2 Vol. n. III.Biblia Sacra Hollandice Mss in Membranis cum fig pictis 2 Vol n III[]
2414.37627TheologiaTextus & Versiones Sacræ ScripturæFolio314.376_027_0925 Historia Veteris ac Novi Testamenti MS. in Membranis cum innumeris ferè Imaginibus miniatè depictis. n. 1.Historia Veteris ac Novi Testamenti MS in Membranis cum innumeris fere Imaginibus miniate depictis n 1[]
.................................
939814.378582Imaginum Delineatarum CollectioNaNNaN140214.378_582_00CCCXXXI Vn Portefeüilles contenant des Desseins de plusieurs Villes d'Espagne par Ant. Van-den-Wingarde. dont il n'y a pas de Catalogue. n. 990.Vn Portefeüilles contenant des Desseins de plusieurs Villes d'Espagne par Ant Van-den-Wingarde dont il n'y a pas de Catalogue n 990[]
939914.378582Imaginum Delineatarum CollectioNaNNaN140214.378_582_01CCCXXXII Vn Recueil des Portraits peints en miniature sur velain au nombre de 34. dont le Premier est celuy de Philippe le Hardy. n. CCIV.Vn Recueil des Portraits peints en miniature sur velain au nombre de 34 dont le Premier est celuy de Philippe le Hardy n CCIV[]
940014.378582Imaginum Delineatarum CollectioNaNNaN140214.378_582_02CCCXXXIII Dix Vol. de Plantes peintes en miniature par Nicol. Robert. vide. Hist. PlantarumDix Vol de Plantes peintes en miniature par Nicol Robert vide Hist Plantarum[]
940114.378582Imaginum Delineatarum CollectioNaNNaN140214.378_582_03CCCXXXIV Cinq Vol. d'Oiseaux peints en Miniature par Nic. Robert. vide. Histor. Animalium.Cinq Vol d'Oiseaux peints en Miniature par Nic Robert vide Histor Animalium[]
940214.378582Imaginum Delineatarum CollectioNaNNaN140214.378_582_04CCCXXXV Divers Portraits, Ceremonies, Marches &c. des Turcs & d'autres nations du Levant, peints en miniature n. CCLXX.Divers Portraits Ceremonies Marches &c des Turcs & d'autres nations du Levant peints en miniature n CCLXX[]
\n", "

1324 rows × 10 columns

\n", "
" ], "text/plain": [ " volume page number category \n", "5 14.376 25 Theologia \\\n", "17 14.376 27 Theologia \n", "21 14.376 27 Theologia \n", "22 14.376 27 Theologia \n", "24 14.376 27 Theologia \n", "... ... ... ... \n", "9398 14.378 582 Imaginum Delineatarum Collectio \n", "9399 14.378 582 Imaginum Delineatarum Collectio \n", "9400 14.378 582 Imaginum Delineatarum Collectio \n", "9401 14.378 582 Imaginum Delineatarum Collectio \n", "9402 14.378 582 Imaginum Delineatarum Collectio \n", "\n", " subcategory format handwritten page number \n", "5 Textus & Versiones Sacræ Scripturæ Folio 1 \\\n", "17 Textus & Versiones Sacræ Scripturæ Folio 3 \n", "21 Textus & Versiones Sacræ Scripturæ Folio 3 \n", "22 Textus & Versiones Sacræ Scripturæ Folio 3 \n", "24 Textus & Versiones Sacræ Scripturæ Folio 3 \n", "... ... ... ... \n", "9398 NaN NaN 1402 \n", "9399 NaN NaN 1402 \n", "9400 NaN NaN 1402 \n", "9401 NaN NaN 1402 \n", "9402 NaN NaN 1402 \n", "\n", " entry_ID \n", "5 14.376_025_05 \\\n", "17 14.376_027_02 \n", "21 14.376_027_06 \n", "22 14.376_027_07 \n", "24 14.376_027_09 \n", "... ... \n", "9398 14.378_582_00 \n", "9399 14.378_582_01 \n", "9400 14.378_582_02 \n", "9401 14.378_582_03 \n", "9402 14.378_582_04 \n", "\n", " entry \n", "5 6 Biblia Sacra Latina cum glossa & Comment. 4 Vol. chartâ Magnâ. Editio perantiqua sine loco & II.O.1. anno n. 2086. \\\n", "17 18 La S.e Bible historiée dite d'Escholatre avec des fig. gravées en bois. 2 Vol. sans datte. Barthel. Verard. n. 165. \n", "21 22 Biblia Sacra germanicè Mss. in Membranis cum figuris pictis. n. II. \n", "22 23 Biblia Sacra Hollandicé Mss. in Membranis cum fig. pictis. 2 Vol. n. III. \n", "24 25 Historia Veteris ac Novi Testamenti MS. in Membranis cum innumeris ferè Imaginibus miniatè depictis. n. 1. \n", "... ... \n", "9398 CCCXXXI Vn Portefeüilles contenant des Desseins de plusieurs Villes d'Espagne par Ant. Van-den-Wingarde. dont il n'y a pas de Catalogue. n. 990. \n", "9399 CCCXXXII Vn Recueil des Portraits peints en miniature sur velain au nombre de 34. dont le Premier est celuy de Philippe le Hardy. n. CCIV. \n", "9400 CCCXXXIII Dix Vol. de Plantes peintes en miniature par Nicol. Robert. vide. Hist. Plantarum \n", "9401 CCCXXXIV Cinq Vol. d'Oiseaux peints en Miniature par Nic. Robert. vide. Histor. Animalium. \n", "9402 CCCXXXV Divers Portraits, Ceremonies, Marches &c. des Turcs & d'autres nations du Levant, peints en miniature n. CCLXX. \n", "\n", " cleaned entry \n", "5 Biblia Sacra Latina cum glossa & Comment 4 Vol charta Magna Editio perantiqua sine loco & IIO1 anno n 2086 \\\n", "17 La Se Bible historiee dite d'Escholatre avec des fig gravees en bois 2 Vol sans datte Barthel Verard n 165 \n", "21 Biblia Sacra germanice Mss in Membranis cum figuris pictis n II \n", "22 Biblia Sacra Hollandice Mss in Membranis cum fig pictis 2 Vol n III \n", "24 Historia Veteris ac Novi Testamenti MS in Membranis cum innumeris fere Imaginibus miniate depictis n 1 \n", "... ... \n", "9398 Vn Portefeüilles contenant des Desseins de plusieurs Villes d'Espagne par Ant Van-den-Wingarde dont il n'y a pas de Catalogue n 990 \n", "9399 Vn Recueil des Portraits peints en miniature sur velain au nombre de 34 dont le Premier est celuy de Philippe le Hardy n CCIV \n", "9400 Dix Vol de Plantes peintes en miniature par Nicol Robert vide Hist Plantarum \n", "9401 Cinq Vol d'Oiseaux peints en Miniature par Nic Robert vide Histor Animalium \n", "9402 Divers Portraits Ceremonies Marches &c des Turcs & d'autres nations du Levant peints en miniature n CCLXX \n", "\n", " years \n", "5 [] \n", "17 [] \n", "21 [] \n", "22 [] \n", "24 [] \n", "... ... \n", "9398 [] \n", "9399 [] \n", "9400 [] \n", "9401 [] \n", "9402 [] \n", "\n", "[1324 rows x 10 columns]" ] }, "execution_count": 527, "metadata": {}, "output_type": "execute_result" } ], "source": [ "without_years" ] }, { "cell_type": "code", "execution_count": 530, "id": "1bacd9fd-af4a-4f50-b0bc-10a4a5af1ee8", "metadata": { "tags": [] }, "outputs": [], "source": [ "before_1501.to_excel('data/man_catalog/Vor 1501.xlsx')" ] }, { "cell_type": "code", "execution_count": 531, "id": "dbd5e8bc-a4a0-46f7-b0ca-8fe84de50e19", "metadata": { "tags": [] }, "outputs": [], "source": [ "without_years.to_excel('data/man_catalog/Ohne Jahresangabe.xlsx')" ] }, { "cell_type": "code", "execution_count": null, "id": "e0c65ab2-9951-4cab-a859-55b7d5427d57", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.10.10" } }, "nbformat": 4, "nbformat_minor": 5 }