Skip to content

Commit 09eaf1c

Browse files
authored
put back specialized colwise and pairwise for CorrDist (#145)
1 parent 801d68a commit 09eaf1c

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

src/metrics.jl

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -711,3 +711,20 @@ function _pairwise!(r::AbstractMatrix, dist::CosineDist, a::AbstractMatrix)
711711
end
712712
r
713713
end
714+
715+
# CorrDist
716+
_centralize_colwise(x::AbstractVector) = x .- mean(x)
717+
_centralize_colwise(x::AbstractMatrix) = x .- mean(x, dims=1)
718+
function colwise!(r::AbstractVector, dist::CorrDist, a::AbstractMatrix, b::AbstractMatrix)
719+
colwise!(r, CosineDist(), _centralize_colwise(a), _centralize_colwise(b))
720+
end
721+
function colwise!(r::AbstractVector, dist::CorrDist, a::AbstractVector, b::AbstractMatrix)
722+
colwise!(r, CosineDist(), _centralize_colwise(a), _centralize_colwise(b))
723+
end
724+
function _pairwise!(r::AbstractMatrix, dist::CorrDist,
725+
a::AbstractMatrix, b::AbstractMatrix)
726+
_pairwise!(r, CosineDist(), _centralize_colwise(a), _centralize_colwise(b))
727+
end
728+
function _pairwise!(r::AbstractMatrix, dist::CorrDist, a::AbstractMatrix)
729+
_pairwise!(r, CosineDist(), _centralize_colwise(a))
730+
end

0 commit comments

Comments
 (0)