Matriz de co-ocorrência da lista de palavras em Python
Eu tenho uma lista de nomes como:
names = ['A', 'B', 'C', 'D']
e uma lista de documentos, que em cada documento são mencionados alguns desses nomes.
document =[['A', 'B'], ['C', 'B', 'K'],['A', 'B', 'C', 'D', 'Z']]
Gostaria de obter uma saída como uma matriz de co-ocorrências como:
A B C D
A 0 2 1 1
B 2 0 2 1
C 1 2 0 1
D 1 1 1 0
Existe uma solução (Criando matriz de co-ocorrência) para esse problema no R, mas não consegui fazê-lo no Python. Estou pensando em fazê-lo em pandas, mas ainda não há progresso!