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

Preparing for Pandas 3 - Chained Assignments #91

Open
JonBoyleCoding opened this issue May 11, 2024 · 0 comments
Open

Preparing for Pandas 3 - Chained Assignments #91

JonBoyleCoding opened this issue May 11, 2024 · 0 comments

Comments

@JonBoyleCoding
Copy link
Contributor

JonBoyleCoding commented May 11, 2024

I've started getting warnings when using 2.2.1 of pandas.

FutureWarning: ChainedAssignmentError: behaviour will change in pandas 3.0!
You are setting values through chained assignment. Currently this works in certain cases, but when using Copy-on-Write (which will become the default behaviour in pandas 3.0) this will never work to update the original DataFrame or Series, because the intermediate object on which we are setting values will behave as a copy.
A typical example is when you are setting values in a column of a DataFrame, like:

df["col"][row_indexer] = value

Use `df.loc[row_indexer, "col"] = values` instead, to perform the assignment in a single step and ensure this keeps updating the original `df`.

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy

  self.envelope_df[month, "available"][index] = (

I thought it might be worth mentioning as there are a number of lines in https://github.com/polarmutex/fava-envelope/blob/5fd2cdebba66c31b6111233437358ed596e3170f/src/fava_envelope/modules/beancount_envelope.py that this pops up for. I don't have exact line numbers as I use some custom patches.

hoostus added a commit to hoostus/fava-envelope that referenced this issue Sep 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant