Evaluar la densidad de palabras clave de un bloque de texto dado

Me gustaría usar php para pasar una frase de palabras clave a una función y hacer que la función analice un bloque de texto y devuelva la densidad de palabra clave de la frase de entrada como un porcentaje del recuento total de palabras del bloque de texto.

$text = 'lorem ipsum etc'; $keyword = 'lorem ipsum'; $word_count = explode(' ', $text); $word_count = count($word_count); $keyword_count = preg_match_all("#{$keyword}#si", $text, $matches); $keyword_count = count($matches); $density = $keyword_count / $word_count * 100; echo number_format($density, 2) . '%'; 

Qué tal si:

  • Divida el texto de entrada en espacios para obtener una matriz de palabras usando preg_split .
  • Use la función de count para obtener el número total de palabras.
  • Use la función array_count_values para obtener la cantidad de tiempo que aparece la palabra clave.
  • Calcular la relación de los dos valores computados anteriores.

Deberá filtrar el texto de entrada eliminando las puntuaciones antes de dividirlo.

Revisa:

  • Algoritmo de análisis de N-Gram de Densidad de palabras clave de PHP