Позиционные аргументы с встраиванием в KDB

#kdb

Вопрос:

 l p.q

np:.p.import`numpy
Logistic:.p.import[`sklearn.linear_model;`:LogisticRegression]

train_X_np: np[`:array](1 2 3)
train_Y_np: np[`:array](0 1 1)

Logistic[`:fit][train_X_np;train_Y_np]
 

Когда я запускаю это, я получаю:

 call: fit() missing 1 required positional argument: 'y'
 

Что я делаю не так?

(Также обычно в массиве должно быть a .reshape(-1,1) X , интересно, не в этом ли причина?)

Ответ №1:

  • Вам необходимо инициализировать объект LogisticRegression
  • Вам нужно изменить форму ввода x
    q)Логистика:.p.импорт[`sklearn.linear_model;`:Логистическая регрессия][]
    q)train_X_np: np[`:массив][1 2 3][`:изменить форму;-1 1]
    q)Логистика[`:подходит][train_X_np;train_Y_np]
    / Для прогнозирования
    q)Логистический[`:прогнозировать][np[`:массив][0 1 2][`:изменить форму;-1 1]]`
    0 1 1
    

Вы также можете использовать flip enlist 1 2 3 список kdb перед передачей его в numpy вместо изменения формы