-
-
Notifications
You must be signed in to change notification settings - Fork 18.4k
BUG: Fix TypeError raised in libreduction #28643
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
values = self.values | ||
index = self.obj._get_axis(self.axis) | ||
labels = self.agg_axis | ||
empty_arr = np.empty(len(index), dtype=values.dtype) | ||
dummy = Series(empty_arr, index=index, dtype=values.dtype) | ||
|
||
# Preserve subclass for e.g. test_subclassed_apply |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
added test for this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Existing test test_subclassed_apply
needs this
Gentle ping; this is a blocker for further progress in groupby/apply/resample exception catching |
agreed, but ok for now :-> |
* master: (22 commits) DOC: fix PR09,PR08 errors for pandas.Timestamp (pandas-dev#28739) WEB: Add diversity note to team.md (pandas-dev#28630) DOC: Minor fixes in pandas/testing.py docstring. (pandas-dev#28752) TST: port maybe_promote tests from pandas-dev#23982 (pandas-dev#28764) Bugfix/groupby datetime issue (pandas-dev#28569) reenable codecov (pandas-dev#28750) CLN: Centralised _check_percentile (pandas-dev#27584) DEPR: Deprecate Index.set_value (pandas-dev#28621) CLN: Fix typo in contributing.rst (pandas-dev#28761) Fixed docstring errors in pandas.period range and pandas.PeriodIndex (pandas-dev#28756) BUG: Fix TypeError raised in libreduction (pandas-dev#28643) DOC: Pandas.Series.drop docstring PR02 (pandas-dev#27976) (pandas-dev#28742) DOC: Fixed doctring errors PR08, PR09 in pandas.io (pandas-dev#28748) TST: Fix broken test cases where Timedelta/Timestamp raise (pandas-dev#28729) REF: Consolidate alignment calls in DataFrame ops (pandas-dev#28638) BUG: Fix dep generation (pandas-dev#28734) Added doctstring to fixture (pandas-dev#28727) DOC: Fixed PR06 docstrings errors in pandas.timedelta_range (pandas-dev#28719) replaced safe_import with a corresponding test decorator (pandas-dev#28731) BUG: Fix RangeIndex.get_indexer for decreasing RangeIndex (pandas-dev#28680) ...
This is a PITA and I'm not 100% happy with the solution here, open to suggestions.
There is a call to
util.get_value_at(labels, i)
that raisesTypeError
iflabels
is not anndarray
. This fixes that by checking for non-ndarray and handling that case correctly.There is also a case in master where we get an
UnboundLocalError
by referencingresult
before it is assigned. This patches that to raise aValueError
instead, but AFAICT fixing the ndarray bug above made it so that the UnboundLocalError case is no longer reached in the tests. i.e. this change is definitely more correct, but we don't have a test case specific to it.I'm also not wild about the specific exception-catching on L297-307 in core.apply, but don't see a viable alternative. Suggestions welcome.