Как мне создать новую таблицу данных в Orange? - PullRequest
5 голосов
/ 24 января 2012

Я использую Orange (в Python) для некоторых задач интеллектуального анализа данных.Более конкретно, для кластеризации.Несмотря на то, что я прошел учебник и прочитал большую часть документации, у меня все еще есть проблема.Все примеры в документах и ​​руководствах предполагают, что у меня есть таблица с разделителями табуляции с данными в ней.Тем не менее, ничего не говорится о том, как можно создать новую таблицу с нуля.Например, я хочу создать таблицу частот слов в разных документах.

Может быть, я что-то упускаю, поэтому, если у кого-то есть понимание, это будет оценено.

Спасибо, Джордж

РЕДАКТИРОВАТЬ:

Вот как я создаю свою таблицу

#First construct the domain object (top row)
vars = []
for var in variables:
    vars.append(Orange.data.variable.Continuous(str(var)))
domain = Orange.data.Domain(vars, classed) #The second argument indicated that the last attr must not be a class    
#Add data rows assuming we have a matrix 
t = Orange.data.Table(domain, matrix)        

Ответы [ 2 ]

5 голосов
/ 05 июля 2012

Мне потребовались часы, чтобы понять.В Python сделайте следующее:

Import Orange
List, Of, Column, Variables = [Orange.feature.Discrete(x) for x in ['What','Theyre','Called','AsStrings']]
Domain = Orange.data.Domain([List, Of, Column, Variables])
Table = Orange.data.Table(Domain)
Table.save('NewTable.tab')

Я бы сказал вам, что делает каждый бит кода, но на данный момент я не совсем уверен.Забавно, что такой мощный инструментарий должен иметь такую ​​сложную для понимания документацию, но я подозреваю, что это потому, что вся его база пользователей имеет докторские степени.

2 голосов
/ 29 октября 2014

Документация действительно недостаточна, если вы спросите меня. Это не может быть ответом на вопрос, но может быть полезным для кого-то еще. Я часами пытался создать Таблицу, используя конструкторы и Домены, а что нет, только для задачи извлечения правил ассоциации, и, наконец, обнаружил, что самый простой способ создать таблицу - просто записать данные в файл с расширением .tab. или .basket и создайте таблицу из этого.

Orange.data.Table("yourFile.basket")

Конечно, структура файла должна быть правильной. См. Предоставленные файлы примеров, расположенные в каталоге пакетов Orange внутри наборов данных /

...