возможно вам нужно это включить (если я правильно понял, что вам нужно):
import re
from collections import Counter
text = 'Hello this is text - yes it is'
text_list = re.split('[^a-z]+', text.lower())
count = Counter(text_list)
df = pd.DataFrame(count, index=[0])
В этом случае вы получите следующий фрейм данных:
hello is it text this yes
1 2 1 1 1 1
Или, может быть, вам нужноследующая векторизация (но какие значения вам понадобятся?):
from sklearn.feature_extraction.text import TfidfVectorizer
text_list = []
with open('cat_sentences.txt') as f:
for line in f:
text_list.append(line.lower().replace('[^\w\s]',' '))
print(text_list)
tfidf_v = TfidfVectorizer(min_df=1,stop_words= None)
X = tfidf_v.fit_transform(text_list)
data = pd.DataFrame(data=X.toarray(), columns=tfidf_v.get_feature_names(), index = text_list)
В этом случае вы получите фрейм данных, где строка будет строкой в тексте, имя столбца будет миром, а значения - частотой (вы можетеПрочитайте здесь http://scikit -learn.org / stable / modules / generate / sklearn.feature_extraction.text.TfidfVectorizer.html )