class_docstr: Analyzer.
  
  Given a run_id, we can do lots of fun things!
class_docstr_tok: ["Analyzer",".","Given","a","run_id",",","we","can","do","lots","of","fun","things","!"]
docstr: Return the number of hits per matchup.
docstr_tok: ["Return","the","number","of","hits","per","matchup","."]
code: def get_num_hits_per_matchup(self):
      """
      Return the number of hits per matchup.
      """
      matchup_total_1_df = self.matchup_total_df.reset_index()
      matchup_total_2_df = matchup_total_1_df.rename(
          columns={
              "eval_choice_0": "eval_choice_1",
              "eval_choice_1": "eval_choice_0",
          }
      )
      self.num_hits_per_matchup_df = (
          pd.concat([matchup_total_1_df, matchup_total_2_df], axis=0)
          .pivot(
              index="eval_choice_0",
              columns="eval_choice_1",
              values="matchup_total",
          )
          .reindex(
              index=self.model_ordering, columns=self.model_ordering
          )
      )
      return self.num_hits_per_matchup_df
  
imports: import hashlib
  import json
  import os
  from copy import deepcopy
  from datetime import datetime
  from typing import Dict, Any, List, Optional
  import numpy
  import pandas
  from IPython.core.display import HTML
  from mephisto.tools.data_browser import DataBrowser
  from mephisto.abstractions.databases.local_database import LocalMephistoDB
  from mephisto.data_model.unit import Unit
  from mephisto.data_model.worker import Worker
  from scipy.stats import binom_test
  from parlai.core.params import ParlaiParser
  from parlai.crowdsourcing.tasks.acute_eval.acute_eval_blueprint import BLUEPRINT_TYPE
  from parlai.crowdsourcing.tasks.acute_eval.fast_acute_blueprint import FAST_ACUTE_BLUEPRINT_TYPE
  from parlai.crowdsourcing.tasks.acute_eval.util import get_hashed_combo_path
label_desc: Use image node_id 13 for calling the AcuteAnalyzer obj's underlying member method code with example usage: obj.get_num_hits_per_matchup() and returns: self