def full(self): """ Generate a full numpy array Returns ------- implicit : tuple first element being the full numpy array and second element keys being the ids associated with each row in the array. Examples -------- >>> from pysal import W >>> neighbors={'first':['second'],'second':['first','third'],'third':['second']} >>> weights={'first':[1],'second':[1,1],'third':[1]} >>> w=W(neighbors,weights) >>> wf,ids=w.full() >>> wf array([[ 0., 1., 0.], [ 1., 0., 1.], [ 0., 1., 0.]]) >>> ids ['first', 'second', 'third'] See also -------- full """ return util.full(self)
def full(self): """ Generate a full numpy array. Returns ------- implicit : tuple first element being the full numpy array and second element keys being the ids associated with each row in the array. Examples -------- >>> from pysal import W >>> neighbors={'first':['second'],'second':['first','third'],'third':['second']} >>> weights={'first':[1],'second':[1,1],'third':[1]} >>> w=W(neighbors,weights) >>> wf,ids=w.full() >>> wf array([[ 0., 1., 0.], [ 1., 0., 1.], [ 0., 1., 0.]]) >>> ids ['first', 'second', 'third'] See also -------- full """ return util.full(self)
def write(self, obj): """ Parameters ---------- .write(weightsObject) accepts a weights object Returns ------ a MATLAB mat file write a weights object to the opened mat file. Examples -------- >>> import tempfile, pysal, os >>> testfile = pysal.open(pysal.examples.get_path('spat-sym-us.mat'),'r') >>> w = testfile.read() Create a temporary file for this example >>> f = tempfile.NamedTemporaryFile(suffix='.mat') Reassign to new var >>> fname = f.name Close the temporary named file >>> f.close() Open the new file in write mode >>> o = pysal.open(fname,'w') Write the Weights object into the open file >>> o.write(w) >>> o.close() Read in the newly created mat file >>> wnew = pysal.open(fname,'r').read() Compare values from old to new >>> wnew.pct_nonzero == w.pct_nonzero True Clean up temporary file created for this example >>> os.remove(fname) """ self._complain_ifclosed(self.closed) if issubclass(type(obj), W): try: w = full(obj)[0] except ValueError: w = obj.sparse sio.savemat(self.file, {'WEIGHT': w}) self.pos += 1 else: raise TypeError("Expected a pysal weights object, got: %s" % (type(obj)))
def write(self, obj): """ Parameters ---------- .write(weightsObject) accepts a weights object Returns ------ a MATLAB mat file write a weights object to the opened mat file. Examples -------- >>> import tempfile, pysal, os >>> testfile = pysal.open(pysal.examples.get_path('spat-sym-us.mat'),'r') >>> w = testfile.read() Create a temporary file for this example >>> f = tempfile.NamedTemporaryFile(suffix='.mat') Reassign to new var >>> fname = f.name Close the temporary named file >>> f.close() Open the new file in write mode >>> o = pysal.open(fname,'w') Write the Weights object into the open file >>> o.write(w) >>> o.close() Read in the newly created mat file >>> wnew = pysal.open(fname,'r').read() Compare values from old to new >>> wnew.pct_nonzero == w.pct_nonzero True Clean up temporary file created for this example >>> os.remove(fname) """ self._complain_ifclosed(self.closed) if issubclass(type(obj), W): try: w = full(obj)[0] except ValueError: w = obj.sparse sio.savemat(self.file, {'WEIGHT': w}) self.pos += 1 else: raise TypeError("Expected a pysal weights object, got: %s" % ( type(obj)))