def __fgetitem__(self, slices):
        data = self.edata.__fgetitem__(slices)

        # input processing
        if "alt_id_sign" in self._iproc:    # sign alt. indirect dimension
            if "alt_id_sign" not in self._oproc:    # skip if in both
                fslice = slices[:-1]
                ffshape = self.fshape[:-1]
                nd_iter = fileiobase.ndtofrom_iter(ffshape, fslice)
                for out_index, in_index in nd_iter:
                    # negate the trace if there is an odd number of
                    # odd number indices in the slice
                    if np.mod(in_index, 2).sum() % 2 == 1:
                        data[out_index] = -data[out_index]

        if "realfactor" in self._iproc:
            data.real = data.real * self._iproc['realfactor']
        if "imagfactor" in self._iproc:
            data.imag = data.imag * self._iproc['imagfactor']

        # output processing
        if "alt_id_sign" in self._oproc:
            if "alt_id_sign" not in self._iproc:
                fslice = slices[:-1]
                ffshape = self.fshape[:-1]
                nd_iter = fileiobase.ndtofrom_iter(ffshape, fslice)
                for out_index, in_index in nd_iter:
                    # negate the trace if there is an odd number of
                    # odd number indices in the slice
                    if np.mod(in_index, 2).sum() % 2 == 1:
                        data[out_index] = -data[out_index]

        if "realfactor" in self._oproc:
            data.real = data.real * self._oproc['realfactor']
        if "imagfactor" in self._oproc:
            data.imag = data.imag * self._oproc['imagfactor']

        return data.astype(self._odtype)
Return ndarray of selected values
dataset/ETHPy150Open jjhelmus/nmrglue/nmrglue/fileio/convert.py/udata_nd.__fgetitem__