def getArrays(self, attr=None, specfiles=None, sort=False, reverse=False,
                  selector=None, defaultValue=None):
        """Return a condensed array of data selected from :class:`Si` instances
        from ``self.sic`` for fast and convenient data processing.

        :param attr: list of :class:`Si` item attributes that should be added to
            the returned array. The attributes "id" and "specfile" are always
            included, in combination they serve as a unique id.
        :param defaultValue: if an item is missing an attribute, the
            "defaultValue" is added to the array instead.
        :param specfiles: filenames of ms-run files, if specified return only
            items from those files
        :type specfiles: str or [str, str, ...]
        :param sort: if "sort" is specified the returned list of items is sorted
            according to the :class:`Si` attribute specified by "sort", if the
            attribute is not present the item is skipped.
        :param reverse: bool, set True to reverse sort order
        :param selector: a function which is called with each :class:`Si` item
            and has to return True (include item) or False (discard item).
            Default function is: ``lambda si: True``

        :returns: {'attribute1': numpy.array(),
                   'attribute2': numpy.array(),
                   ...
                   }
        """
        selector = (lambda si: True) if selector is None else selector
        attr = attr if attr is not None else []
        attr = set(['id', 'specfile'] + aux.toList(attr))
        items = self.getItems(specfiles, sort, reverse, selector)
        return _getArrays(items, attr, defaultValue)