Commit 60b3204
Fix StringDtype vs object dtype mismatch in Data._safecast_df (facebook#4795)
Summary:
Prompted after some failures in exports not related to my changes: https://github.com/facebook/Ax/actions/runs/21225324302/job/61070638075?fbclid=IwY2xjawPeXMFleHRuA2FlbQIxMQBicmlkETFRTkR6WlE4NHVrd3IyQXNlc3J0YwZhcHBfaWQBMAABHjTAiZi71n24w95hvzEewrKNPKOGzJisgR7t4qJ3APRMYlusgFC-gu7RLiSb_aem_Zk3pmTDonCFsJvZCTkpeMA
Pandas 2.0+ changed default string column dtype from `object` to
`StringDtype(na_value=nan)`. The `_safecast_df()` method doesn't properly
handle the comparison between `StringDtype` and `np.dtype("O")` because
they are different types that don't compare equal.
Add explicit check for `pd.StringDtype` to force casting when needed.
Differential Revision: D911854691 parent 3e34f99 commit 60b3204
1 file changed
+7
-3
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
195 | 195 | | |
196 | 196 | | |
197 | 197 | | |
198 | | - | |
199 | | - | |
200 | | - | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
201 | 205 | | |
202 | 206 | | |
203 | 207 | | |
| |||
0 commit comments