nan, floats and ints



我是pandas的新手,我已经开始尝试读取一个完全由1s和0s组成的表,我正在使用read_csv函数来完成它。一切都很好,我得到了一个以int64为列类型的DataFrame。当我引入NaN值时,问题就出现了。在这种情况下,我得到一个列类型为float64的DataFrame。这是预期的行为吗?NaN值是否与int类型不兼容?

我还尝试过通过执行DataFrame(data, dtype=numpy.int64)来强制转换带有float列的DataFrame,但在这种情况下,我得到了如下内容:

                    col1   col2
row1 -9223372036854775808      1
row2                    1      0

NAs/NaN在integer dtype列中不受支持(http://pandas.pydata.org/pandas-docs/stable/gotchas.html#support-对于整数na)。但你描述的第二件事是一个bug。创建关于它的GitHub问题:

https://github.com/pydata/pandas/issues/846

最新更新