Как сделать новую колонку (новую функцию) в Orange Python Script Widget? - PullRequest
0 голосов
/ 17 сентября 2018

У меня есть функция 1, функция 2, функция 3

Как добавить новые "функцию 4" и "функцию 5",?

Приведенный ниже код возвращает только исходную таблицу данных (out_data = in_data)

что я хочу, ** out_data = in_data + новая функция "Feature 4" + новая функция "Feature 5" **

Примечание. Функция 4 непрерывна, а функция 5 дискретна («да» или «нет»)

def add_new_column(data):


    domain = Domain(data.domain.variables,data.domain.class_vars,data.domain.metas)
    return Table(domain, data)
out_data = add_new_column(in_data)

1 Ответ

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

Попробуйте код ниже:

from Orange.data import ContinuousVariable, DiscreteVariable, Domain

var1 = ContinuousVariable("Feature 4")
var2 = DiscreteVariable("Feature 5", values=["yes", "no"])
domain = in_data.domain
new_domain = Domain(attributes=domain.attributes + (var1, var2), metas=domain.metas, class_vars=domain.class_vars)
out_data = in_data.transform(new_domain)
...