2016-11-27 2 views
0

В настоящее время я использую программный инструмент для интеллектуального анализа данных Orange для экспериментов с моими данными. Можем ли мы запускать Orange из сценария Python вместо использования программного обеспечения (можем ли мы написать код python для выполнения программы?). У меня есть скрипт Python для генерации файлов данных. Я хочу написать скрипт Python для использования различных функций из Orange. Это возможно. У нас есть учебник для этого? ThanksМы можем запустить Orange из программы Python

+0

Знаете ли вы, что вы можете вызвать любую программу из Python? Если эта программа поддерживает безгласное, неинтерактивное взаимодействие, тогда вы можете сделать так много. Это может потребовать от вас написать несколько файлов конфигурации и входных файлов, что является обычной практикой. Я предлагаю вам ознакомиться с документацией Orange, чтобы узнать, какие взаимодействия можно сделать с помощью простого вызова исполняемого файла Orange или поиска «скриптового интерфейса» или «API» в документации Orange. –

+1

См. Http://docs.orange.biolab.si/3/data-mining-library. – JanezD

+0

Oliver, Orange уже является библиотекой Python (+ GUI, также на Python), поэтому вы можете просто импортировать его и называть его. – JanezD

ответ

3

Каждый компонент Orange работает от Python, потому что Orange написан на Python. Вы можете запускать отдельные компоненты (например, для чтения данных, визуализации данных и вывода модели) из Python. Документация о том, как разрабатывать такие компоненты и запускать их, доступна в Widget Development Documentation. Помимо модульных тестов для тестирования компонентов GUI, почти все виджеты также включают в себя некоторый тестовый код, который выполняется только путем запуска виджета непосредственно из python (например, python OWRuleViewer.py).

Вы также можете вызвать один или несколько виджетов из своего собственного кода. Например, следующий код будет запускать правило просмотра виджет:

import Orange 
from Orange.widgets.visualize.owruleviewer import OWRuleViewer 
from AnyQt.QtWidgets import QApplication 
from Orange.classification import CN2Learner 

data = Orange.data.Table("titanic") 
learner = Orange.classification.CN2Learner() 
model = learner(data) 
model.instances = data 

a = QApplication([]) 
ow = OWRuleViewer() 
ow.set_classifier(model) 

ow.show() 
a.exec() 

Этого скрипт сначала считывает данные (на пассажирах титановых), затем выводит правила классификации с использованием CN2, и передает эту модель к зрителю правила (OWRuleViewer). Средство просмотра правил - это оранжевый виджет, который отображает правила, а приведенный выше пример может выглядеть так, как показано ниже. Обратите внимание, что интерактивная часть виджета (выбор правил и выбор этих примеров, из которых были разработаны правила) не рассматривается в приведенном выше сценарии.

titanic rules

+0

Спасибо. Я не могу запустить SVMLearner и создал новую запись. можете ли вы взглянуть на него? http://stackoverflow.com/questions/40838367/orange-3-svmlearner-cant-handle-mix-of-multiclass-and-continuous – user3369592

Смежные вопросы