I have files stored using Matlab's sparse format (HDF5, csc I believe), and I'm trying to use Pytables to operate on them directly, but haven't succeeded yet. Using h5py I can do the following:
# Method 1: uses h5py (WORKS) f1 = h5py.File(fname) data = f1['M']['data] ir = f1['M]['ir'] jc = f1['M']['jc'] M = scipy.sparse.csc_matrix( (data,ir,jc) ) but if I try to do the equivalent in Pytables: # Method 2: uses pyTables (DOESN'T WORK) f2 = tables.openFile(fname) data = f2.root.M.data ir = f2.root.M.ir jc = f2.root.M.jc M = scipy.sparse.csc_matrix( (data,ir,jc) ) this fails (after a long wait) with the error: TypeError Traceback (most recent call last) /home/tdiethe/BMJ/<ipython console> in <module>() /usr/lib/python2.6/dist-packages/scipy/sparse/compressed.pyc in __init__(self, arg1, shape, dtype, copy, dims, nzmax) 56 self.indices = np.array(indices, copy=copy) 57 self.indptr = np.array(indptr, copy=copy) ---> 58 self.data = np.array(data, copy=copy, dtype=getdtype(dtype, data)) 59 else: 60 raise ValueError, "unrecognized %s_matrix constructor usage" %\ /usr/lib/python2.6/dist-packages/scipy/sparse/sputils.pyc in getdtype(dtype, a, default) 69 canCast = False 70 else: ---> 71 raise TypeError, "could not interpret data type" 72 else: 73 newdtype = np.dtype(dtype) TypeError: could not interpret data type I have two questions: - how do I load this file in - do I need to perform the conversion to a scipy sparse matrix in order to be able to perform operations on it, or can I perform operations directly on the disk files (matrix multiplication etc)? ------------------------------------------------------------------------------ Cloud Services Checklist: Pricing and Packaging Optimization This white paper is intended to serve as a reference, checklist and point of discussion for anyone considering optimizing the pricing and packaging model of a cloud services business. Read Now! http://www.accelacomm.com/jaw/sfnl/114/51491232/ _______________________________________________ Pytables-users mailing list Pytables-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/pytables-users