Skip to main content

Tools for processing treebank trees

Project description

[![Codacy Badge](https://api.codacy.com/project/badge/Grade/dd9c9290ba414e54a6fa6be48e2543de)](https://app.codacy.com/manual/wmaier/treetools?utm_source=github.com&utm_medium=referral&utm_content=wmaier/treetools&utm_campaign=Badge_Grade_Dashboard) [![Build Status](https://travis-ci.org/wmaier/treetools.svg?branch=master)](https://travis-ci.org/wmaier/treetools) [![Requirements Status](https://requires.io/github/wmaier/treetools/requirements.svg?branch=master)](https://requires.io/github/wmaier/treetools/requirements/?branch=master) [![PyPI version](https://badge.fury.io/py/treetools.svg)](https://badge.fury.io/py/treetools) [![Github All Releases](https://img.shields.io/github/downloads/kotlin-graphics/kotlin-unsigned/total.svg)]()

# treetools - tree processing

treetools is a collection of tools for processing treebank trees. It contains algorithms for tree manipulation (such as removal of crossing branches), tree analysis, and grammar extraction.

treetools has been developed at the Department for Computational Linguistics at the Institute for Language and Information at the University of Düsseldorf, Germany (see <http://phil.hhu.de/beyond-cfg>). The project is sponsored by Deutsche Forschungsgemeinschaft (DFG). It is maintained by Wolfgang Maier.

Author: Wolfgang Maier <mailto:maierw@hhu.de>. Contributions: Kilian Gebhardt

## Installation

Requirements:

  • Python 3.7+

To install the latest release from the Python package index, type:

pip install treetools --user

To install the latest version clone the git repository and run:

python setup.py install --user

within the repository directory.

If you have superuser privileges and want to perform a system-wide installation, omit the –user option, respectively.

## Running

### Syntax

To run treetools, type:

treetools [subcommand] [parameters] [options]

Available subcommands are:

  • transform: Process treebank trees. Run transformations and convert between different formats.

  • grammar: Extract grammars for different parsers from treebanks.

  • treeanalysis: Analyze certain properties of treebank trees, such as, e.g., gap degree.

To get see the available parameters for a subcommand, type:

treetools [subcommand] --help

To get verbose help on available transformation algorithms, available options, etc., type:

treetools [subcommand] --usage

### Examples

To attach the punctuation in TIGER and remove its crossing branches while converting it from TigerXML to the export format, type:

treetools transform tiger.xml tiger.continuous.export --trans root_attach negra_mark_heads boyd_split raising --src-format tigerxml --dest-format export

To extract the bare sentences (one per line) from a treebank in bracketed format, such as the Penn Treebank, type:

treetools transform treebank.brackets treebank.terminals --src-format brackets --dest-format terminals

To delete the traces and co-indexation from the Penn Treebank, type:

treetools transform ptb ptb.notrace --transform ptb_transform --src-format brackets --dest-format brackets

To extract an left-to-right binarized LCFRS with v1/h2 markovization in rparse format from an export-format treebank, type:

treetools grammar input_treebank output_grammar leftright --dest-format rcg --markov v:1 h:2

### License

The code is released under the GNU General Public Licence (GPL) 3.0 or higher. The license texts can be found at at <http://www.gnu.org/licenses/gpl-3.0>.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

treetools-0.4.0.tar.gz (50.7 kB view hashes)

Uploaded Source

Built Distribution

treetools-0.4.0-py3-none-any.whl (56.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page