ndarray 与 DataFrame:使用 NaN 保留整数类型
对于维护 DataFrame 中整数类型列的完整性至关重要的操作场景在容纳缺失值的同时,会出现固有的挑战。 NumPy 数组是 Pandas DataFrames 中的基础数据结构,它对数据类型施加限制,特别是在整数元素和 NaN 值的共存方面。
NaN 困境
NumPy 的无法在整数数组中表示 NaN 源于设计限制。这在希望保留整数数据类型的场景中提出了一个难题。
尝试和不一致
已经做出了规避这一限制的努力,例如利用带有 coerce_float=False 的 from_records() 函数并尝试使用 NumPy 掩码数组。然而,这些方法始终将列数据类型转换为浮点数。
当前的解决方案和限制
在 NumPy 对缺失值的处理方面取得进展之前,仍然有有限的选择。一种潜在的解决方法是用哨兵值替换 NaN,例如任意选择的与有效数据不同的大整数,可用于识别处理过程中丢失的条目。
或者,最新版本的 pandas 中采用的解决方法(0.24 起)是使用 Int64 扩展 dtype(大写“Int”)而不是默认的 int64(小写)。 Int64 支持可选的整数 NA 值,为该特定问题提供了解决方法。
以上是如何在 Pandas DataFrame 中保留缺失值的整数数据类型?的详细内容。更多信息请关注PHP中文网其他相关文章!