def on_params_is_valid(self, exp, *args, **kwargs): # Convert to BinaryInteraction interaction_df = self.upload_interaction.get_as_data_frame() interaction = BinaryInteraction(exp.get_data_folder(), str(self.uuid)) interaction.store_matrix(interaction_df) interaction.row_units = self.row_units interaction.col_units = self.col_units self.set_out_var("interaction", interaction) exp.store_block(self)
def upload_interaction_task(exp, block): AllUpdated(exp.pk, comment=u"Processing Upload Interaction block", silent=False, mode=NotifyMode.INFO).send() if settings.CELERY_DEBUG: import sys sys.path.append("/Migration/skola/phd/projects/miXGENE/mixgene_project/wrappers/pycharm-debug.egg") import pydevd pydevd.settrace("localhost", port=6901, stdoutToServer=True, stderrToServer=True) # Convert to BinaryInteraction sep = getattr(block, "csv_sep", " ") if block.header: _header = 0 else: _header = None interaction_df = block.upload_interaction.get_as_data_frame(sep=sep, header=_header) sd = None # if self.bi_data_type in ["pairs", "triples", "pairs_diff", "triples_diff"]: # we have to find a shape of interaction matrix features_1 = interaction_df[interaction_df.columns[0]].tolist() features_2 = interaction_df[interaction_df.columns[1]].tolist() interactions = [] if block.bi_data_type in ["triples", "triples_diff"]: interactions = zip(features_1, features_2, interaction_df[interaction_df.columns[2]].tolist()) else: interactions = zip(features_1, features_2, [1] * len(features_1)) # new_inters = [expand_inters(inters_a, inters_b, value) for (inters_a, inters_b, value) in interactions] # new_inters = [item for sublist in new_inters for item in sublist] # flatten features_1 = [a for [a, _, _] in interactions] features_2 = [b for [_, b, _] in interactions] values = [c for [_, _, c] in interactions] interaction_df = pd.DataFrame() interaction_df[0] = features_1 interaction_df[1] = features_2 interaction_df[2] = values interaction = BinaryInteraction(exp.get_data_folder(), str(block.uuid)) interaction.store_pairs(interaction_df, block.bi_data_type) # interaction.row_units = self.row_units # interaction.col_units = self.col_units interaction.header = block.header AllUpdated( exp.pk, comment=u"Processing of Upload Interaction block is done", silent=False, mode=NotifyMode.INFO ).send() return [interaction], {}
def upload_interaction_task(exp, block): AllUpdated(exp.pk, comment=u"Processing Upload Interaction block", silent=False, mode=NotifyMode.INFO).send() if settings.CELERY_DEBUG: import sys sys.path.append( '/Migration/skola/phd/projects/miXGENE/mixgene_project/wrappers/pycharm-debug.egg' ) import pydevd pydevd.settrace('localhost', port=6901, stdoutToServer=True, stderrToServer=True) # Convert to BinaryInteraction sep = getattr(block, "csv_sep", " ") if block.header: _header = 0 else: _header = None interaction_df = block.upload_interaction.get_as_data_frame(sep=sep, header=_header) sd = None # if self.bi_data_type in ["pairs", "triples", "pairs_diff", "triples_diff"]: # we have to find a shape of interaction matrix features_1 = interaction_df[interaction_df.columns[0]].tolist() features_2 = interaction_df[interaction_df.columns[1]].tolist() interactions = [] if block.bi_data_type in ["triples", "triples_diff"]: interactions = zip(features_1, features_2, interaction_df[interaction_df.columns[2]].tolist()) else: interactions = zip(features_1, features_2, [1] * len(features_1)) # new_inters = [expand_inters(inters_a, inters_b, value) for (inters_a, inters_b, value) in interactions] # new_inters = [item for sublist in new_inters for item in sublist] # flatten features_1 = [a for [a, _, _] in interactions] features_2 = [b for [_, b, _] in interactions] values = [c for [_, _, c] in interactions] interaction_df = pd.DataFrame() interaction_df[0] = features_1 interaction_df[1] = features_2 interaction_df[2] = values interaction = BinaryInteraction(exp.get_data_folder(), str(block.uuid)) interaction.store_pairs(interaction_df, block.bi_data_type) interaction.x1_unit = getattr(block, "x1_unit", "") interaction.x2_unit = getattr(block, "x2_unit", "") interaction.header = block.header AllUpdated(exp.pk, comment=u"Processing of Upload Interaction block is done", silent=False, mode=NotifyMode.INFO).send() return [interaction], {}