def _with_data(self,data,copy=True):
if copy:<EOL><INDENT>return self.__class__((data,self.indices.copy(),self.indptr.copy()),<EOL>shape=self.shape,dtype=data.dtype)<EOL><DEDENT>else:<EOL><INDENT>return self.__class__((data,self.indices,self.indptr),<EOL>shape=self.shape,dtype=data.dtype)<EOL><DEDENT>
Returns a matrix with the same sparsity structure as self,
        but with different data.  By default the structure arrays
        (i.e. .indptr and .indices) are copied.