当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Julia SparseArrays.sparsevec用法及代码示例


用法一

sparsevec(I, V, [m, combine])

创建一个长度为 m 的稀疏向量 S 使得 S[I[k]] = V[k] 。使用 combine 函数组合重复项,如果没有提供 combine 参数,则默认为 + ,除非 V 的元素是布尔值,在这种情况下 combine 默认为 |

例子

julia> II = [1, 3, 3, 5]; V = [0.1, 0.2, 0.3, 0.2];

julia> sparsevec(II, V)
5-element SparseVector{Float64, Int64} with 3 stored entries:
  [1]  =  0.1
  [3]  =  0.5
  [5]  =  0.2

julia> sparsevec(II, V, 8, -)
8-element SparseVector{Float64, Int64} with 3 stored entries:
  [1]  =  0.1
  [3]  =  -0.1
  [5]  =  0.2

julia> sparsevec([1, 3, 1, 2, 2], [true, true, false, false, false])
3-element SparseVector{Bool, Int64} with 3 stored entries:
  [1]  =  1
  [2]  =  0
  [3]  =  1

用法二

sparsevec(d::Dict, [m])

创建一个长度为 m 的稀疏向量,其中非零索引是字典中的键,非零值是字典中的值。

例子

julia> sparsevec(Dict(1 => 3, 2 => 2))
2-element SparseVector{Int64, Int64} with 2 stored entries:
  [1]  =  3
  [2]  =  2

用法三

sparsevec(A)

将向量 A 转换为长度为 m 的稀疏向量。

例子

julia> sparsevec([1.0, 2.0, 0.0, 0.0, 3.0, 0.0])
6-element SparseVector{Float64, Int64} with 3 stored entries:
  [1]  =  1.0
  [2]  =  2.0
  [5]  =  3.0

相关用法


注:本文由纯净天空筛选整理自julialang.org 大神的英文原创作品 SparseArrays.sparsevec — Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。