バイオエンティティの同時発生のためのPMIスコアを計算する必要があります。 Gene A - Gene B
、またはGene C - Disease A
です。共起はPubtatorから抽出されました。私はPython 3を使用しています。カウントからPMIを計算するための戦略:データフレームまたは行列
文書のセットについては、共起カテゴリですべてのエンティティの個数freq(x)
とfreq(y)
を抽出しました。 Gene-Gene
またはGene-Disease
であり、エンティティペアの同時出現回数はfreq(x,y)
です。すべてのカウントはDict
に格納されます。生のカウントから点単位相互情報量を計算するための最良の方法だろう何
(PMI)スコア:
- は、2つのデータフレームを作成します(個別のカウントのための1つをと共起のための1がカウント) 2つの行列を作成しますか? (上記と同じ)
- 別のアプローチ?
entity, category, count
および他のセットが4つの列を有している:
entity_a, category, entity_b, count
。個々のエンティティカウントのカテゴリが必要です。なぜなら、全体の合計カウントを使用すると、特定の共起タイプの結果が歪むためです。
私はデータフレームアプローチを試みましたが、2つの異なるデータフレーム(DF)を使用して結果を計算する新しいPMIカラムを作成する方法を理解できませんでした。もしそうなら、なぜですか? DFに変換されたデータの
例:
df1.head():
ent rel count 177 5197 Gene_Gene 2 176 56744 Gene_Gene 2 175 12766 Gene_Gene 2 174 3091 Gene_Gene 2 173 3162 Gene_Gene 2
df2.head():
ent_a rel ent_b count 247 5197 Gene_Gene 56744 1 246 12766 Gene_Gene 5197 1 245 12766 Gene_Gene 56744 1 244 3091 Gene_Gene 3162 1 243 3091 Gene_Gene 54583 1
PMI式: