Skip to content

Commit aac2f4e

Browse files
jwkvamlarsmans
authored andcommitted
PY3: fix map usage in ensemble.partial_dependence
1 parent 463cea5 commit aac2f4e

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

sklearn/ensemble/partial_dependence.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@ def plot_partial_dependence(gbrt, X, features, feature_names=None,
268268
# convert feature_names to list
269269
if feature_names is None:
270270
# if not feature_names use fx indices as name
271-
feature_names = map(str, range(gbrt.n_features))
271+
feature_names = list(map(str, range(gbrt.n_features)))
272272
elif isinstance(feature_names, np.ndarray):
273273
feature_names = feature_names.tolist()
274274

@@ -300,7 +300,11 @@ def convert_feature(fx):
300300
names = []
301301
try:
302302
for fxs in features:
303-
names.append([feature_names[i] for i in fxs])
303+
l = []
304+
# explicit loop so "i" is bound for exception below
305+
for i in fxs:
306+
l.append(feature_names[i])
307+
names.append(l)
304308
except IndexError:
305309
raise ValueError('features[i] must be in [0, n_features) '
306310
'but was %d' % i)
@@ -344,7 +348,7 @@ def convert_feature(fx):
344348
# make contour plot
345349
assert len(axes) == 2
346350
XX, YY = np.meshgrid(axes[0], axes[1])
347-
Z = pdp[label_idx].reshape(map(np.size, axes)).T
351+
Z = pdp[label_idx].reshape(list(map(np.size, axes))).T
348352
CS = ax.contour(XX, YY, Z, levels=Z_level, linewidths=0.5,
349353
colors='k')
350354
ax.contourf(XX, YY, Z, levels=Z_level, vmax=Z_level[-1],

0 commit comments

Comments
 (0)