Объект Word2VecKeyedVectors не поддерживает назначение элементов - PullRequest
0 голосов
/ 31 октября 2018

Мне кажется, я понимаю ошибку, что вы не можете изменить определенный индекс определенных типов данных, однако я не понимаю, где в процессе это происходит.

Я пытаюсь взять строку (твит), разбить ее на слова, пропустить слова через словарь w2v (если они есть в вокабе), а затем суммировать значения. Я не понимаю, почему и где я назначаю элемент WordToVector (w2v) и получаю эту ошибку.

 n['new'] = n['tweet'].apply(lambda x: np.sum([x for w2v[i] in x.split() if i in w2v.vocab]))

'Word2VecKeyedVectors' object does not support item assignment

1 Ответ

0 голосов
/ 31 октября 2018

Я не вижу остальной части вашего кода, но просто глядя на эту часть, кажется, что ошибка исходит из внутреннего цикла for:

[x for w2v[i] in x.split() if i in w2v.vocab]

Похоже, что объект w2v имеет тип 'Word2VecKeyedVectors'. Итак, вы пытаетесь присвоить w2v [i] каждое слово, которое вы найдете в вашем x.split (). И это дает ошибку

'Word2VecKeyedVectors' object does not support item assignment
...