我注意到,在 Julia 和 Python 中,矩阵乘法的结果对于稀疏数组和密集数组是不同的,如果涉及无穷大,请参阅示例代码:
julia> using SparseArrays
julia> using LinearAlgebra
julia> A = spdiagm(0 => [0, 1])
2×2 SparseMatrixCSC{Int64,Int64} with 2 stored entries:
[1, 1] = 0
[2, 2] = 1
julia> B = [1 Inf; 1 2]
2×2 Array{Float64,2}:
1.0 Inf
1.0 2.0
julia> A * B
2×2 Array{Float64,2}:
0.0 NaN
1.0 2.0
julia> Array(A) * B
2×2 Array{Float64,2}:
0.0 NaN
1.0 NaN
julia> dropzeros(A) * B
2×2 Array{Float64,2}:
0.0 0.0
1.0 2.0
Run Code Online (Sandbox Code Playgroud)
在 Python 中相同
from scipy.sparse …Run Code Online (Sandbox Code Playgroud)