Skip to content
/ elfen Public

A python package to efficiently extract linguistic features for text/NLP datasets

License

Notifications You must be signed in to change notification settings

mmmaurer/elfen

Repository files navigation

ELFEN - Efficient Linguistic Feature Extraction for Natural Language Datasets

This python package provides efficient linguistic feature extraction for text datasets (i.e. datasets with N text instances, in a tabular structure).

For a full overview of the features available, check the overview table, for further details and tutorials check the documentation

Installation

Install this package using the current pypi version

python -m pip install elfen

Install this package from source

python -m pip install git+https://github.com/mmmaurer/elfen.git

If you want to use the spacy backbone, download the respective model, e.g. "en_core_web_sm":

python -m spacy download en_core_web_sm

To use wordnet features, download open multilingual wordnet using:

python -m wn download omw:1.4

Usage of third-party resources usable in this package

The extraction of psycholinguistic, emotion/lexicon and semantic features relies on third-party resources such as lexicons. Please refer to the original author's licenses and conditions for usage, and cite them if you use the resources through this package in your analyses.

For an overview which features use which resource, and how to export all third-party resource references in a bibtex string, consult the documentation.

Acknowledgements

While all feature extraction functions in this package are written from scratch, the choice of features in the readability and lexical richness feature areas (partially) follows the readability and lexicalrichness python packages.

We use the wn python package to extract Open Multilingual Wordnet synsets.

Citation

If you use this package in your work, for now, please cite

@misc{maurer-2025-elfen,
  author = {Maurer, Maximilian},
  title = {ELFEN - Efficient Linguistic Feature Extraction for Natural Language Datasets},
  year = {2025},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/mmmaurer/elfen}},
}

Releases

No releases published

Packages

No packages published

Languages