Skip to main content

ELFEN - Efficient Linguistic Feature Extraction for Natural Language Datasets

Project description

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 further information, check the GitHub repository and the documentation

Using spacy models

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

python -m spacy download en_core_web_sm

Usage of third-party resources usable in this package

For the full functionality, some external resources are necessary. While most of them are downloaded and located automatically, some have to be loaded manually.

WordNet features

To use wordnet features, download open multilingual wordnet using:

python -m wn download omw:1.4

Note that for some languages, you will need to install another wordnet collection. For example, for German, you can use the following command:

python -m wn download odenet:1.4

For more information on the available wordnet collections, consult the wn package documentation.

Lexicons

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.

Multiprocessing and limiting the numbers of cores used

The underlying dataframe library, polars, uses all available cores by default. If you are working on a shared server, you may want to consider limiting the resources available to polars. To do that, you will have to set the POLARS_MAX_THREADS variable in your shell, e.g.:

export POLARS_MAX_THREADS=8

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}},
}

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

elfen-1.1.8.tar.gz (47.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

elfen-1.1.8-py3-none-any.whl (53.2 kB view details)

Uploaded Python 3

File details

Details for the file elfen-1.1.8.tar.gz.

File metadata

  • Download URL: elfen-1.1.8.tar.gz
  • Upload date:
  • Size: 47.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for elfen-1.1.8.tar.gz
Algorithm Hash digest
SHA256 18beeedc78d9618b815cdb30bc7f7947e5122b5faaf06a5bccc757a2fd54546a
MD5 bf0b14f4fab514c50f588010e9ffd8cd
BLAKE2b-256 0120e2d46091b9e121f5e8f150b49d78efdb9b9b3ede9a2be949d092a4864fd0

See more details on using hashes here.

File details

Details for the file elfen-1.1.8-py3-none-any.whl.

File metadata

  • Download URL: elfen-1.1.8-py3-none-any.whl
  • Upload date:
  • Size: 53.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for elfen-1.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 04624312952143c8d539931dcc695bf081ca60d2883d31dd40cec52b74bb6df0
MD5 9094aa2d898596fd50b65e80fbc06fa2
BLAKE2b-256 f0df1dc036eae7331152d2d0fd858ffb37d3cb98c7191c149956d748124f467f

See more details on using hashes here.

Supported by

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