[SciPy-Dev] utility for composing sparse matrices
Robert Cimrman
cimrman3 at ntc.zcu.cz
Mon Sep 20 06:25:41 EDT 2010
On Mon, 20 Sep 2010, Pauli Virtanen wrote:
> Mon, 20 Sep 2010 10:26:58 +0200, Robert Cimrman wrote:
>> FYI: I have created a function that creates a sparse matrix from sparse
>> (or dense) blocks, somewhat in the spirit of np.r_ and friends, see the
>> example below.
>>
>> Shall we add it to scipy.sparse? It may help to go around some of the
>> fancy-indexing limitations.
>
> Add some tests, and I see no problem in putting it in. Also, I'd check
> that cases such as
>
> compose_sparse([A, B])
> compose_sparse(A)
>
> are handled sensibly.
>
> Also, the equivalent function in `Numpy` is called `bmat`. Should the
> name here reflect that.
I have been using numpy so long, unaware of bmat - call me exlusive array
user :). It's sensible to make it work with 0D and 1D arrays, yes.
> Also, we would need to think if it is possible to get the sparse matrices
> in Scipy to play along with functions in Numpy. (E.g. np.bmat() and
> np.linalg.dot() doing the correct stuff for sparse matrices.)
I would love to see this. I guess some basic sparse matrix support would
have to be in Numpy directly(?). A good candidate is IMHO the COO format -
it is simple, can be easily converted and has the 'data' array.
I will create an enhancement ticket with the function renamed to bmat, and
a test, then.
r.
More information about the SciPy-Dev
mailing list