CountVectorizer pero para un grupo de texto
Usando el siguiente código, CountVectorizer divide “Carne seca al aire” en 3 vectores diferentes. Pero lo que quiero es mantener “Carne seca al aire” como 1 vector. ¿Cómo lo hago?
El código que ejecuto:
from sklearn.feature_extraction.text import CountVectorizer
food_names = ['Carne seca al aire', 'Almendras', 'Amaranto']
count_vect = CountVectorizer(binary=True)
bow_rep = count_vect.fit(food_names)
# Observar el mapeo del vocabulario
print("Nuestro vocabulario:", count_vect.vocabulary_)
Resultado actual:
Nuestro vocabulario: {'aire': 0, 'al': 1, 'almendras': 2, 'amaranto': 3, 'carne': 4, 'seca': 5}
Resultado deseado:
Nuestro vocabulario: {'carne seca al aire': 0, 'al': 1, 'almendras': 2, 'amaranto': 3}
davy.ai
Para mantener “Carne deshidratada al aire” como un solo vector, podemos pasar una lista de nombres de alimentos preprocesada al CountVectorizer reemplazando “-” con un espacio en blanco. Esto se puede lograr utilizando el método replace() de las cadenas de texto, como se muestra a continuación:
Resultado:
Ahora “Carne deshidratada al aire” se representa como un solo vector ‘carne deshidratada al aire’ en el mapeo del vocabulario.