Exemplo n.º 1
0
    def plot_before (before, output_dir):
        from chemotext_util import LoggingUtil
        logger = LoggingUtil.init_logging (__file__)

        if before.count () <= 0:
            return
        '''
        before = before.reduceByKey (lambda x, y : x + y). \
                 mapValues (lambda x : filter (lambda v : v is not None, x))
        '''
        true_plots_dir = os.path.join (output_dir, "chart")
        print ("-------------> before 0")
        true_mentions = before. \
                        mapValues (lambda x : Plot.plot_true_mentions (x, true_plots_dir)). \
                        filter (lambda x : len(x[1]) > 0)
        logger.info ("Plotted {0} sets of true mentions.".format (true_mentions.count ()))
        print ("-------------> before 1")

        false_plots_dir = os.path.join (output_dir, "chart", "false")
        false_mentions = before.subtractByKey (true_mentions)
        false_frequency = false_mentions. \
                          mapValues   (lambda x : Plot.false_mention_histogram (x, false_plots_dir))

        false_mentions = false_mentions. \
                         mapValues   (lambda x : Plot.plot_false_mentions (x, false_plots_dir))

        logger.info ("false mentions: {0}".format (false_mentions.count ()))
        true_mentions = None
        false_mentions = None
        false_frequency = None