def reindex(self, kdims=None, vdims=None):
        """Reindexes Dataset dropping static or supplied kdims

        Creates a new object with a reordered or reduced set of key
        dimensions. By default drops all non-varying key dimensions.x

        Args:
            kdims (optional): New list of key dimensionsx
            vdims (optional): New list of value dimensions

        Returns:
            Reindexed object
        """
        gridded = self.interface.gridded
        scalars = []
        if gridded:
            coords = [(d, self.interface.coords(self, d.name)) for d in self.kdims]
            scalars = [d for d, vs in coords if len(vs) == 1]

        if kdims is None:
            # If no key dimensions are defined and interface is gridded
            # drop all scalar key dimensions
            key_dims = [d for d in self.kdims if (not vdims or d not in vdims)
                        and not d in scalars]
        elif not isinstance(kdims, list):
            key_dims = [self.get_dimension(kdims, strict=True)]
        else:
            key_dims = [self.get_dimension(k, strict=True) for k in kdims]
        dropped = [d for d in self.kdims if not d in key_dims and not d in scalars]

        new_type = None
        if vdims is None:
            val_dims = [d for d in self.vdims if not kdims or d not in kdims]
        else:
            val_dims = [self.get_dimension(v, strict=True) for v in vdims]
            new_type = self._vdim_reductions.get(len(val_dims), type(self))

        data = self.interface.reindex(self, key_dims, val_dims)
        datatype = self.datatype
        if gridded and dropped:
            interfaces = self.interface.interfaces
            datatype = [dt for dt in datatype if not
                        getattr(interfaces.get(dt, None), 'gridded', True)]
        return self.clone(data, kdims=key_dims, vdims=val_dims,
                          new_type=new_type, datatype=datatype)
def reindex ( self , kdims = None , vdims = None ) : gridded = self . interface . gridded scalars = [ ] if gridded : coords = [ ( d , self . interface . coords ( self , d . name ) ) for d in self . kdims ] scalars = [ d for d , vs in coords if len ( vs ) == 1 ] if kdims is None : key_dims = [ d for d in self . kdims if ( not vdims or d not in vdims ) and not d in scalars ] elif not isinstance ( kdims , list ) : key_dims = [ self . get_dimension ( kdims , strict = True ) ] else : key_dims = [ self . get_dimension ( k , strict = True ) for k in kdims ] dropped = [ d for d in self . kdims if not d in key_dims and not d in scalars ] new_type = None if vdims is None : val_dims = [ d for d in self . vdims if not kdims or d not in kdims ] else : val_dims = [ self . get_dimension ( v , strict = True ) for v in vdims ] new_type = self . _vdim_reductions . get ( len ( val_dims ) , type ( self ) ) data = self . interface . reindex ( self , key_dims , val_dims ) datatype = self . datatype if gridded and dropped : interfaces = self . interface . interfaces datatype = [ dt for dt in datatype if not getattr ( interfaces . get ( dt , None ) , 'gridded' , True ) ] return self . clone ( data , kdims = key_dims , vdims = val_dims , new_type = new_type , datatype = datatype )
Reindexes Dataset dropping static or supplied kdims

        Creates a new object with a reordered or reduced set of key
        dimensions. By default drops all non-varying key dimensions.x

        Args:
            kdims (optional): New list of key dimensionsx
            vdims (optional): New list of value dimensions

        Returns:
            Reindexed object