psymarkers
Biblioteca de Python rápida y eficiente para extraer marcadores psicológicos y lingüísticos de textos. Está basada en literatura clínica y psicológica, y cuantifica patrones del lenguaje comúnmente asociados con estados de depresión, ansiedad, rumiación cognitiva o ideación suicida.
Instalación
Puedes instalar la biblioteca directamente desde PyPi:
pip install psymarkers
Nota: Requiere la descarga previa de los diccionarios de nltk si no los tienes en tu entorno:
nltk.download('punkt')nltk.download('vader_lexicon')nltk.download('averaged_perceptron_tagger')
Indicadores disponibles
Los indicadores actuales incluyen:
absolutist_ratio: Proporción de palabras absolutistas (always, never, completely), marcador de ansiedad y depresión.pronouns_ratio: Proporción de pronombres singulares de primera persona (I, me, my), asociado a focalización en uno mismo.pronouns_plural_ratio: Proporción de pronombres plurales (we, us). Su disminución es un indicador de aislamiento social.somatic_ratio: Uso de palabras relacionadas con el cuerpo, dolor y fatiga.hopelessness_ratio: Proporción de léxico que expresa desesperanza y falta de futuro.negative_sentiment/compound_sentiment: Valencia emocional negativa y polaridad afectiva general (mediante VADER).type_token_ratio: Diversidad léxica. Un ratio bajo indica vocabulario repetitivo (rumiación cognitiva).temporal_myopia_index: Ratio de verbos en pasado frente a verbos modales futuros, indicando estrechamiento temporal o incapacidad de proyectarse al futuro.readability_score: Nivel de legibilidad de Flesch-Kincaid. Textos muy desorganizados se asocian a deterioro cognitivo o psicosis.insomnia_post: Validador de metadatos que retorna 1.0 si el texto fue publicado en horario nocturno (2 AM - 5 AM).
Ejemplos de uso
Como pipeline en aprendizaje automático
Ya que (intentamos) que todos los indicadores compartan una interfaz común, se puede usar para crear vectores de características limpios y listos para entrenar modelos:
from psymarkers import markers
# 1. Defines tu pipeline de extracción
metrics_pipeline = [
markers.absolutist_ratio,
markers.pronouns_ratio,
markers.hopelessness_ratio,
markers.negative_sentiment,
markers.temporal_myopia_index,
markers.type_token_ratio
]
text = "I am completely exhausted and have no future."
date = "2023-10-27T03:15:00Z"
# 2. Extraes todas las características en un diccionario en una sola pasada
features = {
metric.__class__.__name__: metric(text, date=date)
for metric in metrics_pipeline
}
# 3. Haces lo que quireas con los datos
print(features) # Salida esperada: {'RegexRatioMetric': 0.11, 'SentimentMetric': 0.8, ...}
Licencia
Este proyecto está licenciado bajo los términos de la GNU General Public License v3.0 (GPLv3). Eres libre de usar,
modificar y distribuir este software, siempre y cuando las obras derivadas se distribuyan bajo la misma licencia
abierta. Para más información, por favor consulta el fichero LICENSE.
Metadata
Release files for psymarkers 0.1.11
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| psymarkers-0.1.11.tar.gz | 6.8 kB | Without provenance | Details for psymarkers-0.1.11.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| psymarkers-0.1.11-py3-none-any.whl | Python 3 | none | any | Details for psymarkers-0.1.11-py3-none-any.whl |
Total release size: 14.3 kB
Release files / psymarkers-0.1.11.tar.gz
| Download URL | psymarkers-0.1.11.tar.gz |
|---|---|
| Size | 6.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fcc3e7632db2f71062bdb299677145fd6bcb45241ecb0cdf10a1117947f7083e
|
|
BLAKE2b-256 checksum How to use checksums |
ff74621eb267f7271589c081e389c7e2467c3f2384c786921fc4f3dfeee454b5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / psymarkers-0.1.11-py3-none-any.whl
| Download URL | psymarkers-0.1.11-py3-none-any.whl |
|---|---|
| Size | 7.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c6a1c547500d5d4ee68321104f78462f9a9784e37bd4debf7033b4a65f70fe31
|
|
BLAKE2b-256 checksum How to use checksums |
f6e1734f197d80da8ec39bacc01811f6dd31a5e46fc1401df1bac3a67aa4d25e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for psymarkers 0.1.11
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.