我有一个大小为y的密集列矩阵(m,1)和尺寸为(m,n)的稀疏矩阵x。
我想用y和x的每一列进行元素乘法.
得到的稀疏矩阵仍为(m,n)大小。
稀疏矩阵x,当加载到内存中时,大约是10 is。
spfun能帮助我以一种高效的记忆方式完成我的目标吗?
我很难理解它背后的逻辑。
谢谢。
发布于 2016-01-06 07:39:33
你试过bsxfun吗?
out = bsxfun( @times, x, y ); spfun更适合于按元素处理x的每个非零元素的操作。它不完全适用于矩阵向量元的运算.
但是,如果您想沿着这条路线做一些事情,您可以尝试:
[ii jj xij] = find(x); %// extract non-zeros of x and their locations
out = sparse( ii, jj, xij.*y(ii), size(x,1), size(x,2) );有关详细信息,请参阅doc find。
https://stackoverflow.com/questions/34627778
复制相似问题