Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Palabras Vacías | Fundamentos de la Preprocesamiento de Texto
Introducción al PLN

bookPalabras Vacías

Comprensión de las palabras vacías

Note
Definición

Las palabras vacías son palabras comunes que generalmente no aportan significado a una oración, al menos para los propósitos de la mayoría de los análisis y algoritmos. Estas incluyen palabras como "the", "is", "in" y "on".

Las palabras vacías suelen ser filtradas después de la tokenización para tareas de PLN, como análisis de sentimientos, modelado de temas o extracción de palabras clave. La razón detrás de eliminar las palabras vacías es reducir el tamaño del conjunto de datos, lo que mejora la eficiencia computacional, y aumenta la relevancia del análisis al centrarse en las palabras que aportan significado relevante.

Eliminación de palabras vacías con NLTK

Para facilitar el proceso, nltk proporciona una lista completa de palabras vacías en varios idiomas, que se puede acceder y utilizar fácilmente para filtrar palabras vacías de los datos de texto.

A continuación se muestra cómo obtener la lista de palabras vacías en inglés en NLTK y convertirla en un set:

1234567
import nltk from nltk.corpus import stopwords # Download the stop words list nltk.download('stopwords') # Load English stop words stop_words = set(stopwords.words('english')) print(stop_words)
copy
Note
Nota

Convertir esta lista en un set mejora la eficiencia de las búsquedas, ya que comprobar la pertenencia en un set es más rápido que en una lista.

Teniendo esto en cuenta, veamos un ejemplo completo de cómo filtrar las stop words de un texto dado:

1234567891011121314
import nltk from nltk.tokenize import word_tokenize from nltk.corpus import stopwords nltk.download('punkt_tab') nltk.download('stopwords') stop_words = set(stopwords.words('english')) text = "This is an example sentence demonstrating the removal of stop words." text = text.lower() # Tokenize the text tokens = word_tokenize(text) # Remove stop words filtered_tokens = [word for word in tokens if word not in stop_words] print("Original Tokens:", tokens) print("Filtered Tokens:", filtered_tokens)
copy

Como se puede observar, primero se deben descargar las stop words y realizar la tokenización. El siguiente paso consiste en utilizar una comprensión de listas para crear una lista que contenga únicamente los tokens que no son stop words. El uso de word.lower() en la cláusula if es fundamental para convertir cada palabra (token) a minúsculas, ya que nltk contiene las stop words exclusivamente en minúsculas.

Note
Nota

Alternativamente, podríamos utilizar un bucle for habitual en lugar de una comprensión de listas; sin embargo, emplear la comprensión de listas en este caso resulta más eficiente y conciso.

question mark

¿Cuál de las siguientes opciones describe mejor qué son las stop words y por qué suelen eliminarse?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 1. Capítulo 7

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Awesome!

Completion rate improved to 3.45

bookPalabras Vacías

Desliza para mostrar el menú

Comprensión de las palabras vacías

Note
Definición

Las palabras vacías son palabras comunes que generalmente no aportan significado a una oración, al menos para los propósitos de la mayoría de los análisis y algoritmos. Estas incluyen palabras como "the", "is", "in" y "on".

Las palabras vacías suelen ser filtradas después de la tokenización para tareas de PLN, como análisis de sentimientos, modelado de temas o extracción de palabras clave. La razón detrás de eliminar las palabras vacías es reducir el tamaño del conjunto de datos, lo que mejora la eficiencia computacional, y aumenta la relevancia del análisis al centrarse en las palabras que aportan significado relevante.

Eliminación de palabras vacías con NLTK

Para facilitar el proceso, nltk proporciona una lista completa de palabras vacías en varios idiomas, que se puede acceder y utilizar fácilmente para filtrar palabras vacías de los datos de texto.

A continuación se muestra cómo obtener la lista de palabras vacías en inglés en NLTK y convertirla en un set:

1234567
import nltk from nltk.corpus import stopwords # Download the stop words list nltk.download('stopwords') # Load English stop words stop_words = set(stopwords.words('english')) print(stop_words)
copy
Note
Nota

Convertir esta lista en un set mejora la eficiencia de las búsquedas, ya que comprobar la pertenencia en un set es más rápido que en una lista.

Teniendo esto en cuenta, veamos un ejemplo completo de cómo filtrar las stop words de un texto dado:

1234567891011121314
import nltk from nltk.tokenize import word_tokenize from nltk.corpus import stopwords nltk.download('punkt_tab') nltk.download('stopwords') stop_words = set(stopwords.words('english')) text = "This is an example sentence demonstrating the removal of stop words." text = text.lower() # Tokenize the text tokens = word_tokenize(text) # Remove stop words filtered_tokens = [word for word in tokens if word not in stop_words] print("Original Tokens:", tokens) print("Filtered Tokens:", filtered_tokens)
copy

Como se puede observar, primero se deben descargar las stop words y realizar la tokenización. El siguiente paso consiste en utilizar una comprensión de listas para crear una lista que contenga únicamente los tokens que no son stop words. El uso de word.lower() en la cláusula if es fundamental para convertir cada palabra (token) a minúsculas, ya que nltk contiene las stop words exclusivamente en minúsculas.

Note
Nota

Alternativamente, podríamos utilizar un bucle for habitual en lugar de una comprensión de listas; sin embargo, emplear la comprensión de listas en este caso resulta más eficiente y conciso.

question mark

¿Cuál de las siguientes opciones describe mejor qué son las stop words y por qué suelen eliminarse?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 1. Capítulo 7
some-alt