gpt4 book ai didi

python - Pandas 报告系列在小数时是一个对象

转载 作者:行者123 更新时间:2023-11-30 22:32:56 25 4
gpt4 key购买 nike

我需要一种自动可靠的方法来查找 pandas 数据框中每列的数据类型。我一直在使用 .dtype() 但注意到它有一些意想不到的东西。

考虑这个 10 行数据框:

df['a']
Out[6]:
0 250.00
1 750.00
2 0.00
3 0.00
4 0.00
5 0.00
6 0.00
7 0.00
8 0.00
9 0.00
Name: a, dtype: object

type(df['a'][0])
Out[9]: decimal.Decimal

当每个条目都是小数时,为什么整个列的数据类型是“对象”?我真的需要它来表示小数或浮点或数字。任何帮助,将不胜感激!

最佳答案

这不是错误,而是由于 numpy dtype 表示造成的:https://docs.scipy.org/doc/numpy/reference/arrays.scalars.html .

基本上,由于 Decimal 不是主要的内置类型,因此它的数据类型最终会成为 object,即使每个单元格的实际类型仍然是 Decimal >.

建议尽可能使用内置标量类型,在本例中为 float64,因为即使类型很可能是数字,算术运算也不太可能被向量化。

当您存储 strdatetime.date 值时,也会观察到同样的情况,这些值的 dtype 是 object

关于python - Pandas 报告系列在小数时是一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45307792/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com