问题
What would be the most efficient way to concatenate sparse matrices in Python using SciPy/Numpy?
Here I used the following:
>>> np.hstack((X, X2))
array([ <49998x70000 sparse matrix of type '<class 'numpy.float64'>'
with 1135520 stored elements in Compressed Sparse Row format>,
<49998x70000 sparse matrix of type '<class 'numpy.int64'>'
with 1135520 stored elements in Compressed Sparse Row format>],
dtype=object)
I would like to use both predictors in a regression, but the current format is obviously not what I'm looking for. Would it be possible to get the following:
<49998x1400000 sparse matrix of type '<class 'numpy.float64'>'
with 2271040 stored elements in Compressed Sparse Row format>
It is too large to be converted to a deep format.
回答1:
You can use the scipy.sparse.hstack
:
from scipy.sparse import hstack
hstack((X, X2))
Using the numpy.hstack
will create an array with two sparse matrix objects.
来源:https://stackoverflow.com/questions/19710602/concatenate-sparse-matrices-in-python-using-scipy-numpy