def mysql_db_context(request, input_dict, output_dict, widget): con = input_dict['connection'] find_con = input_dict['find_connections'] == 'true' initial_context = DBContext(con, find_connections=find_con) initial_target_cols = initial_context.cols[initial_context.target_table] cols_dump = json.dumps(initial_context.cols) return render( request, 'interactions/db_context.html', { 'widget': widget, 'context': initial_context, 'connections': dict(initial_context.connected), 'target_cols': initial_target_cols, 'cols': cols_dump })
def mysql_db_context_finished(postdata, input_dict, output_dict): con = input_dict['connection'] find_con = input_dict['find_connections'] == 'true' context = DBContext(con, find_connections=find_con) context.update(postdata) return {'context' : context}
def mysql_db_context_finished(postdata, input_dict, output_dict): con = input_dict['connection'] find_con = input_dict['find_connections'] == 'true' context = DBContext(con, find_connections=find_con) context.update(postdata) return {'context': context}
def dataset(self): ''' Returns the db context as a list of interpretations, i.e., a list of facts true for each example. ''' target = self.db.target_table db_examples = self.db.rows(target, [self.db.target_att, self.db.pkeys[target]]) examples = [] for cls, pk in sorted(db_examples, key=lambda ex: ex[0]): facts = self._facts(pk, self.db.pkeys[target], target, visited=set()) examples.append('%s %s' % (cls, ', '.join(facts))) return '\n'.join(examples) def default_template(self): return '[%s]' % (', '.join(self._template)) if __name__ == '__main__': from context import DBConnection, DBContext context = DBContext(DBConnection('ilp', 'ilp123', 'ged.ijs.si', 'muta_42')) context.target_table = 'drugs' context.target_att = 'active' conv = Aleph_Converter(context)
def database_db_context_finished(postdata, input_dict, output_dict): con = input_dict['connection'] find_con = input_dict['find_connections'] == 'true' context = DBContext(con, find_connections=find_con) _update_context(context, postdata) return {'context' : context}
examples.append('%s %s' % (cls, ', '.join(facts))) return '\n'.join(examples) def default_template(self): return '[%s]' % (', '.join(self._template)) if __name__ == '__main__': from context import DBConnection, DBContext # context = DBContext(DBConnection('ilp','ilp123','ged.ijs.si','trains')) # context.target_table = 'trains' # context.target_att = 'direction' context = DBContext(DBConnection('ilp','ilp123','ged.ijs.si','muta_42')) context.target_table = 'drugs' context.target_att = 'active' # intervals = {'cars': {'position' : [1, 3]}} #import cPickle #cPickle.dump(intervals, open('intervals.pkl','w')) #rsd = RSD_Converter(context, discr_intervals=intervals, dump=True) #aleph = Aleph_Converter(context, target_att_val='east', discr_intervals=intervals, dump=True) treeliker = TreeLikerConverter(context) print treeliker.default_template() print treeliker.dataset() #print rsd.background_knowledge() #print aleph.background_knowledge() #orange = Orange_Converter(context)
return dataset def orng_type(self, table_name, col): ''' Assigns a given mysql column an orange type. ''' mysql_type = self.types[table_name][col] n_vals = len(self.db.col_vals[table_name][col]) if mysql_type in Orange_Converter.continuous_types or (n_vals >= 50 and mysql_type in Orange_Converter.integer_types): return 'c' elif mysql_type in Orange_Converter.ordinal_types+Orange_Converter.integer_types: return 'd' else: return 'string' if __name__ == '__main__': from context import DBConnection, DBContext context = DBContext(DBConnection('root','','localhost','test')) context.target_table = 'trains' context.target_att = 'direction' intervals = {'cars': {'position' : [1, 3]}} import cPickle cPickle.dump(intervals, open('intervals.pkl','w')) rsd = RSD_Converter(context, discr_intervals=intervals, dump=True) aleph = Aleph_Converter(context, target_att_val='east', discr_intervals=intervals, dump=True) print rsd.background_knowledge() print aleph.background_knowledge() #orange = Orange_Converter(context) #orange.target_table()