def build_payoff_diffs_means(self):
        plist = list(range(self.nplayers))
        payoff_diffs_means = [[0 for opponent in plist] for player in plist]

        for player in plist:
            for opponent in plist:
                diffs = []
                for rep in self.interactions:
                    if (player, opponent) in rep:
                        scores = iu.compute_final_score_per_turn(rep[(player,
                                                                      opponent)])
                        diffs.append(scores[0] - scores[1])
                    if (opponent, player) in rep:
                        scores = iu.compute_final_score_per_turn(rep[(opponent,
                                                                      player)])
                        diffs.append(scores[1] - scores[0])
                if diffs:
                    payoff_diffs_means[player][opponent] = mean(diffs)
                else:
                    payoff_diffs_means[player][opponent] = 0
        return payoff_diffs_means
Returns:
dataset/ETHPy150Open Axelrod-Python/Axelrod/axelrod/result_set.py/ResultSet.build_payoff_diffs_means