Skip to content

Commit 320ad4a

Browse files
authored
Merge pull request #6 from JuanFPR-UPM/MixedKCMI-&-VPTrees
Fixed bug
2 parents c8db216 + 965b479 commit 320ad4a

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

pybnesian/learning/independences/hybrid/mixed_knncmi.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,10 @@ double mi_general(VPTree& ztree,
124124
for (auto i = 0; i < n_rows; ++i) {
125125
eps(i) = knn_results[i].first(k);
126126
k_hat(i) = knn_results[i].second.size();
127+
if (k == 1 && eps(i) == 1.0) {
128+
k_hat(i) = 1;
129+
eps(i) = 0.0;
130+
}
127131
}
128132

129133
// use the ztree to search in all Z, XZ and YZ subspaces
@@ -159,6 +163,10 @@ double mi_pair(VPTree& ytree,
159163
for (auto i = 0; i < n_rows; ++i) {
160164
eps(i) = knn_results[i].first[k];
161165
k_hat(i) = knn_results[i].second.size();
166+
if (k == 1 && eps(i) == 1.0) {
167+
k_hat(i) = 1;
168+
eps(i) = 0.0;
169+
}
162170
}
163171

164172
auto x_is_discrete_column = std::vector<bool>(is_discrete_column.begin(), is_discrete_column.begin() + 1);

0 commit comments

Comments
 (0)