domingo, 19 de maio de 2013

Criação de redes de co-autoria a partir de matrizes de adjacência


O scriptLattes, durante o processamento dos CVs Lattes, gera vários arquivos temporários que podem ser utilizados com outras ferramentas, como por exemplo R-Project, MS-Excel, Vantage Point, Ucinet, Pajek e Gephi.

Muitos arquivos (se não todos) gerados carecem de uma documentação apropriada. Para cobrir essa falta de informação e utilização/generalização dos dados gerados, serão tratados neste Blog vários assuntos relacionados à exploração dos dados da Plataforma Lattes.

Neste primeiro Post tratarei o uso das matrizes de adjacência para a criação de redes de co-autoria. De forma simplificada, uma matriz de adjacência é uma estrutura (arquivo de texto na forma de uma matriz bi-dimensional) que armazena o número de vezes que uma pessoa colaborou com uma outra. Veja na seguinte figura um exemplo de matriz de adjacência criado pelo scriptLattes após a análise de 10 CVs Lattes.

Exemplo de matriz de adjacência. Observe que a matriz é simétrica,
i.e., o valores na posição (i,j) é igual ao valor na posição (j,i), para i,j=1,...,10.

Cada linha e cada coluna está associada a uma pessoa. O valor na posição/célula (9,7) contém o valor inteiro 10. Esse valor indica que, a pessoa de índice 9 colaborou em dez produções (bibliográficas, técnicas ou artísticas) com a pessoa de índice 7.

O scriptLattes gera adicionalmente dois arquivos que podem ser úteis para a associação dos Nomes Completos e dos Rótulos de cada pessoa. Precisamente, esses três arquivos podem ser utilizados pelo Ucinet, Cytospace, R, e Gephi para a análise de redes. Entretanto, para alguns programas os dados devem ser tratados/adaptados (segundo o formato de entrada).

Os arquivos que serão aqui utilizados correspondem ao segundo exemplo de teste (teste-02) que acompanha a ferramenta. Para a criação de redes de co-autoria, úteis exclusivamente em R e Gephi, foi desenvolvido em Python um script denominado matrizAdjacencia2redes (precisa baixar e descompactar o arquivo .tgz).

A sintaxe para a execução do script é a seguinte:
$ python matrizAdjacencia2redes.py  arquivoComAMatrizDeAdjacencia  ArquivoComAListaDeNomes  arquivoComAListaDeRotulos  prefixoDeArquivosDeSaida

Exemplo de uso:
$ python matrizAdjacencia2redes.py  teste-02-matrizDeAdjacencia.txt  teste-02-listaDeNomes.txt  teste-02-listaDeRotulos.txt  teste-02

O script gerará dois arquivos, mantendo o prefixo dado como entrada. Para nosso exemplo de uso, serão gerados os seguintes arquivos: teste-02.gml e teste-02.gdf.

O arquivo .GML pode ser utilizado com a plataforma R, para a visualização e cálculo de métricas topológicas locais ou globais sobre redes. Já, o arquivo .GDF pode ser utilizado com o software Gephi.

Nota (nov/2015): O scriptLattes gera um arquivo com extensão .gdf que já incorpora a matriz de adjacência.


Um comentário:

  1. Olá,Boa Noite

    Venho tentando obter informações de uma região específica do Brasil. No meu caso, eu preciso de informações sobre as pesquisas conduzidas no Piauí. Isto é possível? Se sim, como eu devo proceder?

    ResponderExcluir