def populate()

in misc/CCSynth/CC/DataInsights/src/prose/datainsights/_assertion/_assertion_helper.py [0:0]


    def populate(self, constrained_invariants):
        self.constrained_invariants = constrained_invariants

        self.number_of_invs = sum(
            [inv.data_assertion.number_of_invs for inv in self.constrained_invariants]
        )
        self._valid = self.number_of_invs > 0
        if not self._valid:
            return

        self.inv_matrix = np.concatenate(
            [c_inv.data_assertion.inv_matrix for c_inv in self.constrained_invariants],
            axis=1,
        )
        self.inv_names = []
        for c_inv in self.constrained_invariants:
            self.inv_names.extend(
                [
                    "<"
                    + repr(c_inv.constraint)
                    + "> "
                    + c_inv.data_assertion._get_name(i)
                    for i in range(c_inv.data_assertion.size())
                ]
            )

        self.mean = np.concatenate(
            [c_inv.data_assertion.mean for c_inv in self.constrained_invariants]
        )
        self.min = np.concatenate(
            [c_inv.data_assertion.mins for c_inv in self.constrained_invariants]
        )
        self.max = np.concatenate(
            [c_inv.data_assertion.maxs for c_inv in self.constrained_invariants]
        )
        self.std_dev = np.concatenate(
            [c_inv.data_assertion.std_dev for c_inv in self.constrained_invariants]
        )
        self.std_dev_all = np.concatenate(
            [c_inv.data_assertion.std_dev_all for c_inv in self.constrained_invariants]
        )
        self.std_dev_inv = np.concatenate(
            [c_inv.data_assertion.std_dev_inv for c_inv in self.constrained_invariants]
        )