文献整理2021(2)in silico免疫沈降法でPubMedのデータからキーワードリストを作成する

 この一週間ほど、PubMedの10,000件くらいの検索結果を材料に免疫沈降のようなやり方で修飾語を網羅的に抜き出すのに熱中してしまった。
 まず、2つのキーワードα と βのANDで検索して、該当する文献のタイトルとアブストラクトを抜き出してみる。
 PubMedでは、ヒットした文献10,000件を上限としてテキストファイルとしてダウンロードできるサービスがあるので、これを利用する。csv形式でもダウンロード可能なので喜び勇んでいたら、abstractが含まれていないのでがっかりした。
 気を取り直して、すべての結果のabstractを含めたテキストファイルとしてダウンロードする。
 タイトル、著者リスト、著者所属、アブストラクト、PMID、DOIなどが空行を一行挟む形式で構造化されている。文献と文献の間は空行2行である。
 自前でCSV化するために、VSCに読み込んでいくつか全置換をかます:すべての「,」を一旦「_」(何でもよいが元の文章で使われていない文字)に置き換え、すべての「\n\n\n」を一旦「<EOR>」(何でもよいが元の文章で使われていない文字)に置き換え、すべての「\n\n」を「,」にしたら、「<EOR>」を「\n」に戻す。なお、後でKHCoderに読み込ませる時に「<」「>」が出現して落ちるのを予防するために、LaTeX風に「$\lt$」「$\gt$」と書き換えておく。
 これをExcelに読み込んで、ソートをうまく使ってタイトルとアブストラクトのカラムを揃えて他のカラムを削除し、UTFテキストとしてエクスポート、すべての「_」を「,」に戻したら、KHCoder 3を開いて新規プロジェクトに読み込ませて、前処理を実行する。
 さらに前処理→複合語の検出→TermExtractを実行したら複合語のリストをExcelにエクスポートし、FIND関数を使ってαや βに前置される単語を探すことができるのに気がついたのである。
 今回は1万件の論文からユニークな8万語が抽出されて、16万の複合語が見つかり、その中からα、βそれぞれに場所を示す修飾語を200個と400個、網羅的に発見できたことに自信を得た。

本ブログではamazon associate広告を利用しています。