code: def write(self, filename):
          
          if file_exists(filename):
              return filename
          out_files = [filename, filename + ".rownames", filename + ".colnames"]
          with file_transaction(out_files) as tx_out_files:
              with open(tx_out_files[0], "wb") as out_handle:
                  scipy.io.mmwrite(out_handle, scipy.sparse.csr_matrix(self.matrix))
              pd.Series(self.rownames).to_csv(tx_out_files[1], index=False)
              pd.Series(self.colnames).to_csv(tx_out_files[2], index=False)
          return filename
docs: read a sparse matrix, loading row and column name files