Я получаю «ValueError: установка элемента массива с последовательностью». ошибка, когда я пытаюсь запустить свой классификатор случайных лесов на разнородных данных - текстовые данные передаются в модель word2vec, и я извлекаю одномерный числовой массив, беря среднее значение векторов word2vec для каждого слова в строке текста.
Вот пример данных, с которыми я работаю:
col-A col-B ..... col-z
100 230 ...... [0.016612869501113892, -0.04279713928699493, .....]
где col-z - массив с фиксированным размером 300 в каждой строке.
Ниже приведен код для вычисления средних векторов word2vec и создания массивов с пустыми значениями:
` final_data = []
for i, row in df.iterrows():
text_vectorized = []
text = row['col-z']
for word in text:
try:
text_vectorized.append(list(w2v_model[word]))
except Exception as e:
pass
try:
text_vectorized = np.asarray(text_vectorized, dtype='object')
text_vectorized_mean = list(np.mean(text_vectorized, axis=0))
except Exception as e:
text_vectorized_mean = list(np.zeros(100))
pass
try:
len(text_vectorized_mean)
except:
text_vectorized_mean = list(np.zeros(100))
temp_row = np.asarray(text_vectorized_mean, dtype='object')
final_data.append(temp_row)
text_array = np.asarray(final_data, dtype='object')`
После этого я конвертирую text_array в pandas dataframe и объединяю его с моим исходным dataframe с другими числовыми столбцами. Но как только я пытаюсь передать эти данные в классификатор, в этой строке выдается сообщение об ошибке:
--> array = np.array(array, dtype=dtype, order=order, copy=copy)
Почему я получаю эту ошибку?