valueerror установка элемента массива с последовательностью sklearn - PullRequest
0 голосов
/ 05 июля 2019

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

Я проверил, является ли каждый тип данных массивом или нет, они являются массивами типа данных с плавающей запятой

print(type(train_on[0][0]))
print(type(train_on[0]))
print(type(train_on))

дает вывод

<class 'numpy.float32'>
<class 'numpy.ndarray'>
<class 'numpy.ndarray'>

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

count=0
for i in range(train_on.shape[0]):
    if train_on[i].size==300:
        count+=1
print(count)
count/train.shape[0]

и возвращается

66376
1.0

ошибка появляется, когда я пытаюсь передать ее в модель логистической регрессии

    logr = LogisticRegression(solver='sag')
    logr.fit(train_on,train['A'])

это ошибка

--> 522                 array = np.asarray(array, dtype=dtype, order=order)
    523             except ComplexWarning:
    524                 raise ValueError("Complex data not supported\n"

/anaconda/envs/py35/lib/python3.5/site-packages/numpy/core/numeric.py in asarray(a, dtype, order)
    536 
    537     """
--> 538     return array(a, dtype, copy=False, order=order)
    539 
    540 

ValueError: setting an array element with a sequence.

Может кто-нибудь помочь мне с этим

...