Skip to content
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

Improve the workarounds for handling pandas nullable dtypes in pandas<=2.1 #3596

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

seisman
Copy link
Member

@seisman seisman commented Nov 7, 2024

Description of proposed changes

This PR is cherry-picked from #3584. See that PR for context. More tests will be added in that PR too.

This PR is an improved version of PR #3505.

Labeling this PR as "bug" and we will merge the two entries for PR #3505 and this PR when we drafting the release changelog.

@seisman seisman added bug Something isn't working needs review This PR has higher priority and needs review. labels Nov 7, 2024
@seisman seisman added this to the 0.14.0 milestone Nov 7, 2024
@seisman seisman removed the needs review This PR has higher priority and needs review. label Nov 7, 2024
Comment on lines +165 to +171
# pandas nullable dtypes and pyarrow types were converted to np.object_ dtype
# before, and are converted to suitable numpy dtypes since pandas 2.2.
# Refer to the following link for details:
# https://pandas.pydata.org/docs/whatsnew/v2.2.0.html#to-numpy-for-numpy-nullable-and-arrow-types-converts-to-suitable-numpy-dtype
# Here are the workarounds for pandas < 2.2.
# Following SPEC 0, pandas 2.1 should be dropped in 2025 Q3, so it's likely we can
# remove the workaround in PyGMT v0.17.0.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# pandas nullable dtypes and pyarrow types were converted to np.object_ dtype
# before, and are converted to suitable numpy dtypes since pandas 2.2.
# Refer to the following link for details:
# https://pandas.pydata.org/docs/whatsnew/v2.2.0.html#to-numpy-for-numpy-nullable-and-arrow-types-converts-to-suitable-numpy-dtype
# Here are the workarounds for pandas < 2.2.
# Following SPEC 0, pandas 2.1 should be dropped in 2025 Q3, so it's likely we can
# remove the workaround in PyGMT v0.17.0.
# pandas nullable dtypes and PyArrow types were converted to np.object_ dtype
# before, and are converted to suitable NumPy dtypes since pandas 2.2.
# Refer to the following link for details:
# https://pandas.pydata.org/docs/whatsnew/v2.2.0.html#to-numpy-for-numpy-nullable-and-arrow-types-converts-to-suitable-numpy-dtype
# Here are the workarounds for pandas < 2.2.
# Following SPEC 0, pandas 2.1 should be dropped in 2025 Q3, so it's likely we can
# remove the workaround in PyGMT v0.17.0.

@seisman seisman marked this pull request as ready for review November 9, 2024 14:20
@seisman seisman added needs review This PR has higher priority and needs review. and removed needs review This PR has higher priority and needs review. labels Nov 9, 2024
@seisman seisman marked this pull request as draft November 10, 2024 07:25
@seisman
Copy link
Member Author

seisman commented Nov 10, 2024

Please review the changes in #3584 first. I'll cherry-pick changes in that PR to this PR later.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants