Calcula la cantidad total de sílabas por cada elemento de un vector de texto.
Para ello, primero tokeniza el texto en palabras con tokenize_words
y luego suma las sílabas de cada palabra utilizando una función de
silabificación provista por el usuario o por el paquete (por defecto,
syll_count
, definida en el núcleo de silabificación).
Usage
count_syllables(
text,
syllable_fun = syll_count,
na_as_zero = FALSE,
drop_empty = TRUE,
syll_args = list(),
...
)
Arguments
- text
Vector de caracteres con el/los texto(s) a analizar.
- syllable_fun
Función que recibe una palabra (cadena de caracteres) y devuelve el número de sílabas de esa palabra. Por defecto
syll_count
.- na_as_zero
Lógico; si es
TRUE
, cuandotext
tieneNA
devuelve 0 en lugar deNA
en el conteo.- drop_empty
Lógico; si es
TRUE
, descarta tokens vacíos o con solo espacios antes de contar sílabas.- syll_args
Lista de argumentos adicionales que se pasarán a
syllable_fun
(útil si tu función de silabificación admite opciones, p. ej., normalización).- ...
Argumentos adicionales que se pasan a
tokenize_words
.
Details
Esta función actúa como un contenedor: delega la separación en palabras a
tokenize_words
y la estimación de sílabas por palabra a
syllable_fun
. Si tu implementación de silabificación tiene otro nombre
(por ejemplo, count_syllables_word
o syllables_es
), pasala
mediante el argumento syllable_fun
.
See also
tokenize_words
, syll_count
Examples
# Supone que `syll_count()` existe y está disponible:
count_syllables("Este es un texto de prueba.")
#> [1] 9
# Pasando una función de silabificación alternativa:
# count_syllables("Prueba alternativa.", syllable_fun = count_syllables_word)
# Control de NAs:
count_syllables(c("Uno dos", NA), na_as_zero = TRUE)
#> [1] 3 0
# devuelve c(4, 0) si cada palabra tiene 2 sílabas