コード例 #1
0
ファイル: sync_steps_experiments.py プロジェクト: katur/eegi
    def sync_score_row(legacy_row):
        legacy_score_code = legacy_row[2]
        legacy_scorer = legacy_row[3]
        experiment = get_experiment(legacy_row[0], tile_to_well(legacy_row[1]))
        score_code = get_score_code(legacy_score_code)
        scorer = get_user(legacy_scorer)

        timestamp = get_timestamp_from_ymd(legacy_row[4], legacy_row[5])
        if not timestamp:
            raise CommandError(
                'ERROR: score of experiment {}, well {} '
                'could not be converted to a proper datetime'
                .format(legacy_row[0], legacy_row[1]))

        new_score = ManualScore(
            experiment=experiment,
            score_code=score_code,
            scorer=scorer,
            timestamp=timestamp)

        return update_or_save_object(
            command, new_score, recorded_scores, fields_to_compare,
            alternate_pk={'experiment': new_score.experiment,
                          'score_code': new_score.score_code,
                          'scorer': new_score.scorer,
                          'timestamp': new_score.timestamp})
コード例 #2
0
    def sync_score_row(legacy_row):
        legacy_score_code = legacy_row[2]
        legacy_scorer = legacy_row[3]
        experiment = get_experiment(legacy_row[0], tile_to_well(legacy_row[1]))
        score_code = get_score_code(legacy_score_code)
        scorer = get_user(legacy_scorer)

        timestamp = get_timestamp_from_ymd(legacy_row[4], legacy_row[5])
        if not timestamp:
            raise CommandError(
                'ERROR: score of experiment {}, well {} '
                'could not be converted to a proper datetime'.format(
                    legacy_row[0], legacy_row[1]))

        new_score = ManualScore(experiment=experiment,
                                score_code=score_code,
                                scorer=scorer,
                                timestamp=timestamp)

        return update_or_save_object(command,
                                     new_score,
                                     recorded_scores,
                                     fields_to_compare,
                                     alternate_pk={
                                         'experiment': new_score.experiment,
                                         'score_code': new_score.score_code,
                                         'scorer': new_score.scorer,
                                         'timestamp': new_score.timestamp
                                     })
コード例 #3
0
    def sync_score_row(legacy_row):
        legacy_score_code = legacy_row[2]
        legacy_scorer = legacy_row[3]
        gene = legacy_row[9]
        screen = legacy_row[10]

        # Skip some scores entirely (see criteria above)
        skip_entirely = ('alejandro', 'katy')
        skip_ENH = ('eliana', 'lara')

        if ((legacy_scorer == 'Julie' and legacy_score_code != -2)
                or (legacy_scorer in skip_entirely)
                or (screen == 'ENH' and legacy_scorer in skip_ENH)):
            command.stderr.write(
                'FYI: Skipping a {} {} score of {} by {}\n'.format(
                    gene, screen, legacy_score_code, legacy_scorer))

            return True

        # Convert some scorers to hueyling (see criteria above)
        if legacy_scorer == 'Julie' or legacy_scorer == 'expPeople':
            command.stderr.write(
                'FYI: Converting a {} score by {} to hueyling\n'.format(
                    legacy_score_code, legacy_scorer))

            legacy_scorer = 'hueyling'

        # Convert some score codes (see criteria above)
        if legacy_score_code == -6:
            command.stderr.write('FYI: Converting score from -6 to -7\n')
            legacy_score_code = -7

        # Following raise exceptions if improperly formatted or not found
        experiment = get_experiment(legacy_row[0], tile_to_well(legacy_row[1]))
        score_code = get_score_code(legacy_score_code)
        scorer = get_user(legacy_scorer)

        timestamp = get_timestamp(legacy_row[5], legacy_row[6], legacy_row[7],
                                  legacy_row[8], legacy_row[4])
        if not timestamp:
            raise CommandError(
                'ERROR: score of {} could  not be converted to a proper '
                'datetime'.format(experiment))

        new_score = ManualScore(experiment=experiment,
                                score_code=score_code,
                                scorer=scorer,
                                timestamp=timestamp)

        return update_or_save_object(command,
                                     new_score,
                                     recorded_scores,
                                     fields_to_compare,
                                     alternate_pk={
                                         'experiment': new_score.experiment,
                                         'score_code': new_score.score_code,
                                         'scorer': new_score.scorer,
                                         'timestamp': new_score.timestamp
                                     })
コード例 #4
0
ファイル: sync_steps_experiments.py プロジェクト: katur/eegi
    def sync_score_row(legacy_row):
        legacy_score_code = legacy_row[2]
        legacy_scorer = legacy_row[3]
        gene = legacy_row[9]
        screen = legacy_row[10]

        # Skip some scores entirely (see criteria above)
        skip_entirely = ('alejandro', 'katy')
        skip_ENH = ('eliana', 'lara')

        if ((legacy_scorer == 'Julie' and legacy_score_code != -2) or
                (legacy_scorer in skip_entirely) or
                (screen == 'ENH' and legacy_scorer in skip_ENH)):
            command.stderr.write(
                'FYI: Skipping a {} {} score of {} by {}\n'
                .format(gene, screen, legacy_score_code, legacy_scorer))

            return True

        # Convert some scorers to hueyling (see criteria above)
        if legacy_scorer == 'Julie' or legacy_scorer == 'expPeople':
            command.stderr.write(
                'FYI: Converting a {} score by {} to hueyling\n'
                .format(legacy_score_code, legacy_scorer))

            legacy_scorer = 'hueyling'

        # Convert some score codes (see criteria above)
        if legacy_score_code == -6:
            command.stderr.write('FYI: Converting score from -6 to -7\n')
            legacy_score_code = -7

        # Following raise exceptions if improperly formatted or not found
        experiment = get_experiment(legacy_row[0], tile_to_well(legacy_row[1]))
        score_code = get_score_code(legacy_score_code)
        scorer = get_user(legacy_scorer)

        timestamp = get_timestamp(legacy_row[5], legacy_row[6], legacy_row[7],
                                  legacy_row[8], legacy_row[4])
        if not timestamp:
            raise CommandError(
                'ERROR: score of {} could  not be converted to a proper '
                'datetime'.format(experiment))

        new_score = ManualScore(
            experiment=experiment,
            score_code=score_code,
            scorer=scorer,
            timestamp=timestamp)

        return update_or_save_object(
            command, new_score, recorded_scores, fields_to_compare,
            alternate_pk={'experiment': new_score.experiment,
                          'score_code': new_score.score_code,
                          'scorer': new_score.scorer,
                          'timestamp': new_score.timestamp})