def iloc(cls, dataset, index):
        """
        Dask does not support iloc, therefore iloc will execute
        the call graph and lose the laziness of the operation.
        """
        rows, cols = index
        scalar = False
        if isinstance(cols, slice):
            cols = [d.name for d in dataset.dimensions()][cols]
        elif np.isscalar(cols):
            scalar = np.isscalar(rows)
            cols = [dataset.get_dimension(cols).name]
        else:
            cols = [dataset.get_dimension(d).name for d in index[1]]
        if np.isscalar(rows):
            rows = [rows]

        data = OrderedDict()
        for c in cols:
            data[c] = dataset.data[c].compute().iloc[rows].values
        if scalar:
            return data[cols[0]][0]
        return tuple(data.values())
def iloc ( cls , dataset , index ) : rows , cols = index scalar = False if isinstance ( cols , slice ) : cols = [ d . name for d in dataset . dimensions ( ) ] [ cols ] elif np . isscalar ( cols ) : scalar = np . isscalar ( rows ) cols = [ dataset . get_dimension ( cols ) . name ] else : cols = [ dataset . get_dimension ( d ) . name for d in index [ 1 ] ] if np . isscalar ( rows ) : rows = [ rows ] data = OrderedDict ( ) for c in cols : data [ c ] = dataset . data [ c ] . compute ( ) . iloc [ rows ] . values if scalar : return data [ cols [ 0 ] ] [ 0 ] return tuple ( data . values ( ) )
Dask does not support iloc, therefore iloc will execute
        the call graph and lose the laziness of the operation.