생물체의 동시 발현에 대한 PMI 점수를 계산해야합니다. Gene A - Gene B
또는 Gene C - Disease A
동시 발생은 Pubtator에서 추출되었습니다. 파이썬 3을 사용합니다.카운트에서 PMI를 계산하기위한 전략 : 데이터 프레임 또는 행렬
문서 세트의 경우, 모든 출처의 개별 수 freq(x)
및 freq(y)
을 공존 범주별로 추출했습니다. Gene-Gene
또는 Gene-Disease
이고 엔티티 쌍의 공동 발생 카운트는 freq(x,y)
입니다. 모든 카운트는 Dict
에 저장됩니다.
원시 카운트에서 점별 상호 정보 (PMI) 점수를 계산하는 가장 좋은 방법이 될 것입니다 무엇 :
- 두 개의 데이터 프레임 (동시 발생 횟수에 대한 개별 카운트 하나 하나)
- 만들기를 두 개의 행렬을 만드시겠습니까? (위와 동일)
- 또 다른 접근?
entity, category, count
다른 세트는 4 열을 갖는다 :
하나 개의 데이터 세트가 3 열이 있는지 고려 카테고리가 동시 발생의 종류를 나타내는 entity_a, category, entity_b, count
. 개별 엔티티 수에 대한 카테고리가 필요합니다. 왜냐하면 전체 총 카운트를 사용하면 특정 공존 유형에 대한 결과가 왜곡 될 수 있기 때문입니다.
데이터 프레임 접근 방식을 시도했지만 두 개의 다른 데이터 프레임 (DF)을 사용하여 결과를 계산하는 새로운 PMI 열을 만드는 방법을 이해할 수 없으므로 매트릭스 접근 방식이 더 잘 작동 할 수 있다고 생각하십니까? 그렇다면 왜? 데이터
예 DFS로 변환했을 때
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를 수식 :