krm_ndl #
国会図書館デジタルコレクションで公開している
観智院本類聚名義抄の画像へのリンクを整理したものである。
観智院本類聚名義抄の所在と国会図書館デジタルコレクションのURLとを対照させたデータである。
ファイル名は、KRM_ndl.tsv である。
巻名(帖名)、部首字、風間版頁数、天理版頁数、国会図書館デジタルコレクションのURL、を示すデータである。
次にサンプルとしてデータの冒頭部分を示す。
| Book | Radical | Kazama | Tenri | NDL_url |
|---|---|---|---|---|
| 仏上 | 人 | 1 | 23 | https://dl.ndl.go.jp/info:ndljp/pid/2586891/6 |
| 仏上 | 人 | 2 | 24 | https://dl.ndl.go.jp/info:ndljp/pid/2586891/7 |
krm_main との連携
#
krm_main との連携をとるためには、ChatGPTやGeminiなどの生成AIで次の質問をすれば適切な回答が得られる。ここではExcelを用いるように指示しているが、Pythonで処理したい場合は、ExcelをPythonに
置き換えてください。
以下はChatGPTへの質問と回答の例です。
質問 #
krm_main.tsvファイルとkrm_ndl.tsvファイルを、krm_main.tsvのkazama_location列とkrm_ndl.tsvのKazama列を使ってExcelでジョインする方法を教えてください。また、以下の対応を含めてください:
- “仏上” → “K01”
- “仏中” → “K02”
- “仏下本” → “K03”
- “仏下末” → “K04”
- “法上” → “K05”
- “法中” → “K06”
- “法下” → “K07”
- “僧上” → “K08”
- “僧中” → “K09”
- “僧下” → “K10”
以下はファイルのサンプルデータです:
サンプル krm_main.tsv:
#
| entry_id | hanzi_id | kazama_location | tenri_location | volume_name | radical_name | volume_radical_index | hanzi_entry | original_entry | definition |
|---|---|---|---|---|---|---|---|---|---|
| F00001 | S00001 | K01001310 | Ta023310 | 仏上 | 人 | v1#1 | 人 | 〇 | 音仁(LV)「ニン」 ヒト(HL) ワレ(LL) サネ マホル ユク |
| F00002 | S00002 | K01001331 | Ta023331 | 仏上 | 人 | v1#1 | 一/人 | 〇/〇 | ヒトリ(LH_) |
| F00003 | S00004 | K01001341 | Ta023341 | 仏上 | 人 | v1#1 | 二/人 | 〇/〇 | フタリ(HHL) |
サンプル krm_ndl.tsv:
#
| Book | Radical | Kazama | Tenri | NDL_url |
|---|---|---|---|---|
| 仏上 | 人 | 1 | 23 | https://dl.ndl.go.jp/info:ndljp/pid/2586891/6 |
| 仏上 | 人 | 2 | 24 | https://dl.ndl.go.jp/info:ndljp/pid/2586891/7 |
| 仏上 | 人 | 3 | 25 | https://dl.ndl.go.jp/info:ndljp/pid/2586891/7 |
回答 #
krm_main.tsvファイルとkrm_ndl.tsvファイルを、krm_main.tsvのkazama_location列とkrm_ndl.tsvのKazama列を使ってExcelでジョインする方法は、次の手順で行えます:
-
データの準備:
krm_main.tsvとkrm_ndl.tsvの両方をExcelにインポートし、それぞれを別々のシート(例えば、krm_mainとkrm_ndl)に分けて配置します。
-
対応表の作成:
- 新しいシート(例えば「対応表」)を作成し、
kazama_locationとKazamaの対応を以下のように記入します。
kazama_location Kazama 仏上 K01 仏中 K02 仏下本 K03 仏下末 K04 法上 K05 法中 K06 法下 K07 僧上 K08 僧中 K09 僧下 K10 - 新しいシート(例えば「対応表」)を作成し、
-
Kazamaコードの検索:
krm_mainシートに新しい列(例えば「Kazamaコード」)を追加します。VLOOKUP関数を使用して、kazama_locationの値に基づいて「対応表」シートからKazamaコードを取得します。
新しい列(例えば、G列)に次の数式を入力します:
=VLOOKUP(D2, 対応表!$A$2:$B$11, 2, FALSE)D2はkrm_mainシートのkazama_location列のセルです。対応表!$A$2:$B$11は対応表シートのkazama_locationとKazamaの対応範囲です。
-
データの結合:
- 再度
VLOOKUPを使用して、krm_mainとkrm_ndlをKazamaコードを基に結合します。 - 例えば、
krm_mainシートに新しい列を作成し、krm_ndlシートのNDL_urlを取得します。次の数式を入力します:
=VLOOKUP(G2, krm_ndl!$C$2:$E$100, 3, FALSE)G2はkrm_mainシートの「Kazamaコード」列のセルです。krm_ndl!$C$2:$E$100はkrm_ndlシートのKazamaとNDL_urlが含まれる範囲です。
- 再度
まとめ #
この方法では、以下の手順でデータを結びつけることができます:
kazama_locationとKazamaコードの対応表を作成する。VLOOKUP関数を使用して、krm_mainとkrm_ndlをKazamaコードを基に結びつける。
この手法を使うことで、Excelで効率的にデータを結びつけることができます。