Skip to content

Commit

Permalink
BUG: fix #60128 BUG: Series.combine_first loss of precision
Browse files Browse the repository at this point in the history
- Issue: There was int64->float64->int64 conversions
- Fix: Carry out the operation without passing through float64
  • Loading branch information
cooolheater committed Nov 1, 2024
1 parent 5829e3e commit 957f38f
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion pandas/core/frame.py
Original file line number Diff line number Diff line change
Expand Up @@ -8640,7 +8640,10 @@ def combine(
"""
other_idxlen = len(other.index) # save for compare

this, other = self.align(other)
fill_value_for_align = None
if all(self.dtypes.eq(np.int64)) and all(other.dtypes.eq(np.int64)):
fill_value_for_align = 0
this, other = self.align(other, fill_value=fill_value_for_align)
new_index = this.index

if other.empty and len(new_index) == len(self.index):
Expand Down

0 comments on commit 957f38f

Please sign in to comment.