KeyError при использовании sklearn.feature_extraction.text

from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
tfidf = TfidfVectorizer(analyzer='word', stop_words='english')

age_matrix = tfidf.fit_transform(df['age'])

При запуске вышеуказанного кода может возникнуть следующая ошибка.

Почему это происходит?

Помогите, пожалуйста. Заранее спасибо.

/usr/local/lib/python3.6/dist-packages/pandas/core/indexes/base.py в get_loc (self, key, method, терпимость) 2895 return self._engine.get_loc (casted_key) 2896 кроме KeyError как err : - ›2897 поднять KeyError (ключ) из ошибки 2898 2899, если допуск не равен None:

KeyError: 'возраст'

Мой набор данных выглядит следующим образом.

        Gender                      product  0
age                                       
18       F                    Bags-Mens  5
18       F                   Bags-Women  4
18       F               Books-Academic  4
18       F               Books-Children  5
18       F                 Books-Comics  7
..     ...                          ... ..
44       M                 Books-Comics  2
44       M                Clothing-Mens  1
44       M               Clothing-Women  1
44       M               Footwear-Women  1
44       M  Home and kitchen-Furnishing  2

[1202 rows x 3 columns]

person sanduniYW    schedule 06.11.2020    source источник


Ответы (1)


Кажется, что 'age' - это индекс фрейма данных (а не столбец), поэтому вы не можете получить к нему доступ с помощью df ['age'].

Вместо этого вы можете просто передать df.index методу fit_transform.

person Roeik    schedule 06.11.2020