Sparse vector transpose is slow

2 次查看(过去 30 天)
Superfish
Superfish 2012-2-8
I'm performing the operation
X = [X; x']
in my MATLAB code. x is a very large and very sparse vector which is created as a column vector
x = sparse(nonZeroRows, 1, vals, vectorLength, 1);
The problem is that taking the transpose x' is VERY slow. Also, creating x' directly through
xT = sparse(1, nonZeroRows, vals, 1, vectorLength);
is also very slow.
How can I perform this operation efficiently?
  1 个评论
Walter Roberson
Walter Roberson 2012-2-8
I am not surprised at it being slow; sparse vectors are organized by columns (I think it was), one header per column used, so when you transpose to a row it has to create headers for each of those rows.
I do not know what (if anything) can be done to improve the situation.

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Sparse Matrices 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by