[Scipy-svn] r2509 - trunk/Lib/sparse

scipy-svn at scipy.org scipy-svn at scipy.org
Mon Jan 8 23:49:11 CST 2007


Author: timl
Date: 2007-01-08 23:49:05 -0600 (Mon, 08 Jan 2007)
New Revision: 2509

Modified:
   trunk/Lib/sparse/sparse.py
Log:
code cleanups

Modified: trunk/Lib/sparse/sparse.py
===================================================================
--- trunk/Lib/sparse/sparse.py	2007-01-09 02:36:32 UTC (rev 2508)
+++ trunk/Lib/sparse/sparse.py	2007-01-09 05:49:05 UTC (rev 2509)
@@ -20,8 +20,8 @@
     new[:old] = arr
     return new
 
-MAXPRINT=50
-ALLOCSIZE=1000
+MAXPRINT = 50
+ALLOCSIZE = 1000
 NZMAX = 100
 
 
@@ -83,9 +83,9 @@
         self.maxprint = maxprint
         self.allocsize = allocsize
 
-    def astype( self, t ):
+    def astype(self, t):
         csc = self.tocsc()
-        return csc.astype( t )
+        return csc.astype(t)
 
     def getmaxprint(self):
         try:
@@ -158,7 +158,7 @@
         return val[:-1]
 
     def __cmp__(self, other):
-        raise TypeError, "comparison of sparse matrices not implemented"
+        raise NotImplementedError, "comparison of sparse matrices not implemented"
 
     def __nonzero__(self):  # Simple -- other ideas?
         return self.getnnz() > 0
@@ -383,18 +383,18 @@
         # For some sparse matrix formats more efficient methods are
         # possible -- these should override this function.
         m, n = self.shape
-        if axis==0:
+        if axis == 0:
             # sum over columns
             # Does the following multiplication work in NumPy now?
             o = asmatrix(ones((1, m), dtype=self.dtype))
             return o * self
             # o = ones(m, dtype=self.dtype)
             # return asmatrix(self.rmatvec(o))
-        elif axis==1:
+        elif axis == 1:
             # sum over rows
             o = asmatrix(ones((n, 1), dtype=self.dtype))
             return self * o
-        elif axis==None:
+        elif axis == None:
             # sum over rows and columns
             m, n = self.shape
             o0 = asmatrix(ones((1, m), dtype=self.dtype))
@@ -407,11 +407,11 @@
         """Average the matrix over the given axis.  If the axis is None,
         average over both rows and columns, returning a scalar.
         """
-        if axis==0:
+        if axis == 0:
             mean = self.sum(0)
             mean *= 1.0 / self.shape[0]
             return mean
-        elif axis==1:
+        elif axis == 1:
             mean = self.sum(1)
             mean *= 1.0 / self.shape[1]
             return mean
@@ -433,11 +433,11 @@
         if (k > 0 and k >= N) or (k < 0 and -k >= M):
             raise ValueError, "k exceedes matrix dimensions"
         if k < 0:
-            max_index = min(M+k,N,len(values))
+            max_index = min(M+k, N, len(values))
             for i,v in enumerate(values[:max_index]):
                 self[i - k, i] = v
         else:
-            max_index = min(M,N-k,len(values))
+            max_index = min(M, N-k, len(values))
             for i,v in enumerate(values[:max_index]):
                 self[i, i + k] = v
 
@@ -618,6 +618,7 @@
         if self.dtype.char not in 'fdFD':
             self.data = 1.0 * self.data
             self.dtype = self.data.dtype
+
         self.ftype = _transtabl[self.dtype.char]
 
     def astype(self, t):
@@ -647,7 +648,7 @@
             indptr,rowind,data = sparsetools.cscplcsc(self.shape[0],self.shape[1], \
                                                     self.indptr,self.rowind,self.data,\
                                                       ocs.indptr,ocs.rowind,ocs.data)
-            return csc_matrix((data,rowind,indptr),self.shape)
+            return csc_matrix((data,rowind,indptr), self.shape)
         elif isdense(other):
             # Convert this matrix to a dense matrix and add them.
             return self.todense() + other
@@ -762,7 +763,7 @@
             # indptr[j+1]
             for j in xrange(n):
                 out[j] = data[indptr[j] : indptr[j+1]].sum()
-            if axis==0:
+            if axis == 0:
                 # Output is a (1 x n) dense matrix
                 return asmatrix(out)
             else:
@@ -784,8 +785,8 @@
             #if len(other) != self.shape[1]:
             #    raise ValueError, "dimension mismatch"
             oth = numpy.ravel(other)
-            y = sparsetools.cscmux(self.shape[0],self.shape[1],\
-                                   self.indptr,self.rowind,self.data,oth)
+            y = sparsetools.cscmux(self.shape[0], self.shape[1],\
+                                   self.indptr, self.rowind, self.data, oth)
             if isinstance(other, matrix):
                 y = asmatrix(y)
                 # If 'other' was an (nx1) column vector, transpose the result
@@ -831,7 +832,7 @@
             other = other.tocsc()
             indptr,rowind,data = sparsetools.cscmucsc(M,N,self.indptr,self.rowind,self.data,\
                                                              other.indptr,other.rowind,other.data)
-            return csc_matrix((data,rowind,indptr),(M,N))      
+            return csc_matrix((data, rowind, indptr), (M, N))      
         elif isdense(other):
             # This is SLOW!  We need a more efficient implementation
             # of sparse * dense matrix multiplication!
@@ -926,7 +927,6 @@
             raise ValueError, "slicing with step != 1 not supported"
         if stop <= start:
             raise ValueError, "slice width must be >= 1"
-        startind = -1
 
         indices = []
         
@@ -958,11 +958,11 @@
     def tocoo(self):
         rows,cols,data = sparsetools.csctocoo(self.shape[0],self.shape[1],\
                                               self.indptr,self.rowind,self.data)
-        return coo_matrix((data,(rows,cols)),self.shape)
+        return coo_matrix((data,(rows,cols)), self.shape)
 
     def tocsr(self):
         indptr,colind,data = sparsetools.csctocsr(self.shape[0],self.shape[1],self.indptr,self.rowind,self.data)
-        return csr_matrix((data,colind,indptr),self.shape)
+        return csr_matrix((data,colind,indptr), self.shape)
     
     def toarray(self):
         return self.tocsr().toarray()
@@ -981,7 +981,7 @@
         self.nzmax = nnz
         self._check()
 
-    def ensure_sorted_indices(self,inplace=False):
+    def ensure_sorted_indices(self, inplace=False):
         """Return a copy of this matrix where the row indices are sorted
         """
         if inplace:
@@ -992,6 +992,7 @@
         else:
             return self.tocsr().tocsc()
 
+
     def copy(self):
         new = csc_matrix(self.shape, nzmax=self.nzmax, dtype=self.dtype)
         new.data = self.data.copy()
@@ -1380,7 +1381,6 @@
             raise ValueError, "slicing with step != 1 not supported"
         if stop <= start:
             raise ValueError, "slice width must be >= 1"
-        startind = -1
 
         indices = []
         



More information about the Scipy-svn mailing list