TOOL

pyNetConv

pyNetConv (styled "pyNetConv - Network Conversion tool") is a small Python library, with an accompanying graphical front-end, for converting biological and social networks between the file formats used by different graph-analysis and visualization programs. It was written by Márcio Rosa da Silva and released on SourceForge, reaching version 0.12; it is distributed with a distutils setup and runs on Linux, FreeBSD, macOS, and Windows, requiring only a Python interpreter. The project originated from the practical problem that widely used tools such as Pajek and Cytoscape store networks in mutually incompatible files, making it awkward to move a graph produced in one program into another.

The library models a network as an object holding nodes and edges together with auxiliary data: cluster membership, node attributes, node coordinates, and gene-expression values. It reads and writes Pajek .net graphs and their .clu cluster files (Pajek), Cytoscape .sif networks plus separate node-attribute files (SIF), and GML. Conversions are bidirectional, so a typical workflow imports a network in one format, optionally manipulates it in Python, and exports it to another. Because the internal representation can be built on and converted to NetworkX graphs, pyNetConv also serves as a bridge into the broader Python graph ecosystem; a noted improvement was correct handling of isolated (unconnected) nodes when exporting to NetworkX.

A distinguishing feature is its awareness of semantics that pure topology converters ignore. It translates Pajek cluster assignments into Cytoscape node attributes, and it reconciles differing coordinate conventions — Pajek uses layout positions normalized to the 0-1 range while GML stores absolute pixel-scale coordinates — so that node placement survives a round trip. From version 0.8 it can additionally import tab-separated expression tables exported by Affymetrix Micro Array Suite 5.0 (MAS5) and attach them to nodes as Cytoscape attributes or expression data, reflecting its bioinformatics-oriented origins.

The honest limitations are those of a niche, largely unmaintained utility. The format coverage is narrow (Pajek, Cytoscape SIF, GML, plus the MAS5 tables) and does not extend to modern interchange formats such as GraphML or GEXF; documentation was incomplete at release; some conversions prompt the user for parameters; and the project has seen no recent development. Users needing broader or more current format support will generally reach for a general-purpose library such as NetworkX or igraph, or a dedicated converter, but pyNetConv remains a concise reference for the specific Pajek/Cytoscape/GML triangle with expression-data support.

Graph Formats(Input & Output)

Input Formats

Frequently Asked Questions

What graph file formats does pyNetConv support?

See the list on this page — it shows every format pyNetConv can read, write and display.

How do I import a graph into pyNetConv?

Convert your file to a format pyNetConv can read, then open it in pyNetConv. Use GraphInOut to get a pyNetConv-compatible file in seconds.

How do I convert a file so pyNetConv can open it?

Use the convert links above — upload or paste your graph, pick a format pyNetConv accepts and download the result, right in your browser.