From 8168b9029ba2704f4f31fae9dce5fb8f68bd1be6 Mon Sep 17 00:00:00 2001 From: Leif Walsh Date: Tue, 15 Aug 2017 12:51:48 -0400 Subject: [PATCH 1/2] ENH: improve 'incompatible tolerance' error message in merge_asof --- pandas/core/reshape/merge.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pandas/core/reshape/merge.py b/pandas/core/reshape/merge.py index 0234a5563326c..df7706da8da2c 100644 --- a/pandas/core/reshape/merge.py +++ b/pandas/core/reshape/merge.py @@ -1268,8 +1268,8 @@ def _get_merge_keys(self): else: lt = left_join_keys[-1] - msg = "incompatible tolerance, must be compat " \ - "with type {lt}".format(lt=type(lt)) + msg = "incompatible tolerance {0}, must be compat " \ + "with type {1}".format(type(tolerance), lt.dtype) if is_datetime64_dtype(lt) or is_datetime64tz_dtype(lt): if not isinstance(self.tolerance, Timedelta): From a9ac6f9f32da0f241b602d17ec020daef766842c Mon Sep 17 00:00:00 2001 From: Jeff Reback Date: Fri, 10 Nov 2017 15:24:19 -0500 Subject: [PATCH 2/2] clean up error message & typos --- pandas/core/reshape/merge.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/pandas/core/reshape/merge.py b/pandas/core/reshape/merge.py index df7706da8da2c..412c00dc95ec0 100644 --- a/pandas/core/reshape/merge.py +++ b/pandas/core/reshape/merge.py @@ -126,7 +126,7 @@ def _groupby_and_merge(by, on, left, right, _merge_pieces, try: if k in merged: merged[k] = key - except: + except KeyError: pass pieces.append(merged) @@ -1268,8 +1268,10 @@ def _get_merge_keys(self): else: lt = left_join_keys[-1] - msg = "incompatible tolerance {0}, must be compat " \ - "with type {1}".format(type(tolerance), lt.dtype) + msg = ("incompatible tolerance {tolerance}, must be compat " + "with type {lkdtype}".format( + tolerance=type(self.tolerance), + lkdtype=lt.dtype)) if is_datetime64_dtype(lt) or is_datetime64tz_dtype(lt): if not isinstance(self.tolerance, Timedelta): @@ -1505,12 +1507,12 @@ def _sort_labels(uniques, left, right): # tuplesafe uniques = Index(uniques).values - l = len(left) + llength = len(left) labels = np.concatenate([left, right]) _, new_labels = sorting.safe_sort(uniques, labels, na_sentinel=-1) new_labels = _ensure_int64(new_labels) - new_left, new_right = new_labels[:l], new_labels[l:] + new_left, new_right = new_labels[:llength], new_labels[llength:] return new_left, new_right