Extractor de n-gramas

Un n-grama es una secuencia continua de n palabras dentro de un texto. Este extractor pasa tu texto a minúsculas, lo divide en palabras en cada espacio y cada signo de puntuación, y cuenta todos los n-gramas de la longitud que elijas (de 1 a 8). El resultado es una tabla de frecuencias en CSV ordenada de mayor a menor: justo la tabla en la que se apoyan las comprobaciones de densidad de palabras clave en SEO, el suavizado de modelos de lenguaje y la detección de plagio.

Cómo extraer n-gramas

  1. 1

    Pega tu texto

    Mete un artículo, una transcripción o el texto de una ficha de producto. No hay límite de longitud para entradas razonables.

  2. 2

    Elige n

    Unigramas (1), bigramas (2), trigramas (3) y hasta 8. Una longitud por ejecución.

  3. 3

    Extrae

    El texto se pasa a minúsculas y se divide en palabras; la puntuación actúa como separador y se descarta.

  4. 4

    Lee la tabla de frecuencias

    Cada n-grama aparece con su número de apariciones, ordenado de más a menos frecuente.

  5. 5

    Copia el CSV

    La salida está separada por comas (N-gram,Count), lista para pegar en una hoja de cálculo.

Qué te dice cada longitud de n-grama

N Nombre Caso de uso
1 Unigrama Densidad de palabras clave, mapa de temas
2 Bigrama Frases (“search intent”, “page speed”), colocaciones
3 Trigrama Frases de cola larga, detección de características
4+ Tetragrama y más Detección de contenido duplicado, señales de plagio

Cómo divide el texto esta herramienta

  • Todo se pasa a minúsculas, así que “The” y “the” caen en la misma fila.
  • Una palabra es cualquier secuencia de letras, dígitos o apóstrofos. Cualquier otro carácter (puntuación, símbolos, saltos de línea) se considera separador y se descarta.
  • No se respetan los límites de las frases. La última palabra de una frase y la primera de la siguiente pueden formar un n-grama, así que interpreta con cautela los pares que cruzan de una frase a otra. Si eso te importa, analiza frase a frase o párrafo a párrafo.
  • Las stopwords se mantienen. No se filtra nada por ti: si solo quieres frases con carga semántica, borra esas filas del CSV después.
  • Las palabras se detectan por espacios y puntuación. El español separa las palabras con espacios, así que la herramienta funciona directamente. Ten en cuenta, eso sí, que no se lematiza: “página”, “páginas” y “paginar” ocupan filas distintas; si necesitas formas canónicas, lematiza antes con spaCy. El chino, el japonés y el tailandés, en cambio, no separan las palabras con espacios: una frase entera llega como una sola palabra, por lo que hay que segmentarla antes (jieba, MeCab, un segmentador de tailandés).

Cuándo eliminar las stopwords

Las stopwords son palabras funcionales de altísima frecuencia: en inglés “the”, “a”, “of”, “and”; en español “el”, “de”, “que”, “y”. Si las dejas, la lista de bigramas se llena de ruido como “of the” o “de la”. Este extractor las conserva, así que elimina esas filas del CSV cuando busques frases con carga semántica, y déjalas cuando estudies estilo, atribución de autoría o modelos de lenguaje, donde las palabras funcionales sí son señal.

Caso de uso en SEO

Para un artículo que apunta a “nginx config generator”, comprueba:

  • Que tu bigrama y tu trigrama objetivo aparezcan en el top 20. Si “nginx config” está en el puesto 40, seguramente estés usando poco el término.
  • Que no estés haciendo keyword stuffing. Si está en el primer puesto por un margen enorme, el texto se lee como spam.
  • Que existan vecinos semánticos. Bigramas relacionados como “server block”, “proxy pass” y “ssl certificate” confirman a los buscadores que el tema está bien cubierto.

Uso en PLN y en el ámbito académico

  • Los modelos de lenguaje usan frecuencias de n-gramas para el suavizado y el backoff (Kneser-Ney, Good-Turing).
  • Los estudios de atribución de autoría comparan las distribuciones de trigramas entre los autores candidatos.
  • La evaluación de traducción automática (BLEU) puntúa el solapamiento de n-gramas entre la traducción candidata y la de referencia.

Preguntas frecuentes

Desde un tuit (donde los n-gramas apenas significan nada) hasta un capítulo de libro. Para que los bigramas sean fiables estadísticamente necesitas más de 1.000 palabras; para los trigramas, más de 10.000. Por debajo de eso, el ranking es puro ruido.

Aquí no. El texto siempre se pasa a minúsculas antes de contar, de modo que “The” y “the” (o “Apple” y “apple”) comparten una única fila en lugar de dividirse en dos. No hay un modo sensible a mayúsculas: si necesitas mantener aparte nombres propios o código, márcalos en el texto antes de pegarlo.

Actúan como separadores de palabras y nunca aparecen dentro de un n-grama. Ahora bien, no cortan la ventana de conteo: la última palabra de una frase y la primera de la siguiente se siguen contando juntas como un bigrama. Si necesitas respetar los límites de frase, procesa las frases o los párrafos por separado.

Solo si segmentas el texto antes. Las palabras se detectan como secuencias de letras y dígitos entre separadores, y esos idiomas se escriben sin espacios entre palabras, así que una frase entera entra como una sola palabra. Pásala primero por un segmentador (jieba, MeCab, un segmentador de tailandés) para que las palabras queden separadas por espacios y pega después el resultado. El español y el resto de idiomas con espacios funcionan sin más.

La herramienta no aplica ninguna, así que filtras tú después de exportar. La lista inglesa más habitual es el conjunto de 179 palabras de NLTK, que usan casi todas las herramientas SEO. Snowball, SpaCy y scikit-learn traen listas ligeramente distintas. Para el español, usa la lista de stopwords en español de NLTK o de spaCy.

Herramientas relacionadas

Herramienta disponible en otros idiomas