Exemplo n.º 1
0
    def _batch_zip_sub_data_containers(self, data_container: DataContainer):
        """
        Zip sub data containers on the batch dimension.

        :param data_container: data container to zip
        :type data_container: DataContainer
        :return: base step, data container
        :rtype: DataContainer
        """
        sub_data_containers_to_zip = []
        if self.data_sources is None:
            self.data_sources = data_container.get_sub_data_container_names()

        for name, sub_data_container in data_container.sub_data_containers:
            if name in self.data_sources:
                sub_data_containers_to_zip.append(sub_data_container)

        for data_container_to_zip in sub_data_containers_to_zip:
            data_container = self._batch_zip_sub_data_container(data_container, data_container_to_zip)

        return data_container
Exemplo n.º 2
0
    def _concatenate_sub_data_containers(self, data_container: DataContainer):
        """
        Merge sub data containers into the current data container.

        :param data_container: data container to zip
        :type data_container: DataContainer
        :return: base step, data container
        :rtype: DataContainer
        """
        sub_data_containers_to_zip = []
        if self.data_sources is None:
            self.data_sources = data_container.get_sub_data_container_names()

        for name, sub_data_container in data_container.sub_data_containers:
            if name in self.data_sources:
                sub_data_containers_to_zip.append(sub_data_container)

        for data_container_to_zip in sub_data_containers_to_zip:
            data_container = self._concatenate_sub_data_container(data_container, data_container_to_zip)

        return data_container