У меня большой массив данных с более чем 50 строками.Для каждой строки у меня есть столбец «токены», который содержит большое количество текстовых токенов.Я использовал цикл for вместе с распределением частот, чтобы найти топ-10 токенов в каждом ряду для столбца «токены».
Я пытаюсь добавить новый столбец в мой фрейм данных с именем «top10», чтобы в каждой строке топ-10 токенов содержался в столбце «top10».
Это текущий код, который я использую, чтобы найти свои топ-10 токенов для каждой строки.
for i in range(len(df)):
tokens = df.iloc[i]['tokens']
frequency = nltk.FreqDist(tokens)
print(" ", word_frequency.most_common(10))
Пример моего фрейма данных:
id location about age tokens
1 usa ... 20 ['jim','hi','hello'......]
...
...
40 uk ... 50 ['bobby','hi','hey'......]
Ожидаемый результат:
id location about age tokens top10
1 usa ... 20 ['jim','hi','hello'......] ['hi', 'paddy'....]
...
...
40 uk ... 50 ['bobby','hi','hey'......] ['john', 'python'..]
В столбце top10 должны отображаться слова в порядке убывания.
Любая помощь приветствуется, спасибо!