You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In 0.23 we added a warning when trying to merge on int / float columns where the float values are not actually integers (#18352). No objections to that, but I think we should special case for NaNs, as this is a typical case that turns an integer column into floats, but does give the warning:
In [8]: df1 = pd.DataFrame({'col1': [0, 1], 'key': [1, 2]})
...: df2 = pd.DataFrame({'col2': ['a', 'b'], 'key': [2, np.nan]})
In [9]: pd.merge(df1, df2, on='key')
/home/joris/scipy/pandas/pandas/core/reshape/merge.py:969: UserWarning: You are merging on int and float columns where the float values are not equal to their int representation
'representation', UserWarning)
Out[9]:
col1 key col2
0 1 2 a
So I think the above should not generate the warning.
A fix is probably to just mask for missing values in the check (PR coming).
The text was updated successfully, but these errors were encountered:
In 0.23 we added a warning when trying to merge on int / float columns where the float values are not actually integers (#18352). No objections to that, but I think we should special case for NaNs, as this is a typical case that turns an integer column into floats, but does give the warning:
So I think the above should not generate the warning.
A fix is probably to just mask for missing values in the check (PR coming).
The text was updated successfully, but these errors were encountered: