def search(self, string, tags=None):

        if isinstance(tags, string_types):
            message = "tags should be a list or None, got tags={}".format(tags)
            raise TypeError(message)

        data_collection = DataCollection()
        for item in self.iteritems():
            if string == item.name:
                if tags is None or tags == []:
                    data_collection.add_data(item)
                else:
                    if any([tag in item.tags for tag in tags]):
                        data_collection.add_data(item)
        return data_collection
Returns any data containers matching the search criteria.
dataset/ETHPy150Open impactlab/eemeter/eemeter/meter/base.py/DataCollection.search