看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gr99123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
(选择题)从旧系统导出的“员工工时”表,所有列被读成 object:
import pandas as pd
df = pd.DataFrame({
"工号": ["E01", "E02", "E03"],
"工时": ["8.0", "7.5", "9"], # 数字字符串
"迟到": ["False", "True", "False"]
})
单选题以下问题:
执行 df.infer_objects().dtypes
后,下列哪一项描述 正确?
A. 列 工时
会变成 float64
B. 列 迟到
会变成 boolean
C. 列 工时
仍为 object
,因为 infer_objects() 不会把数字字符串转为数值
D. 所有列都会变成最合适的扩展类型(如 Float64、boolean)
答案:C
infer_objects()
仅对已存在的 Python 对象做一次“轻推断”,不会把像"8.0"
这样的数字字符串转换成数值;因此工时
保持object
。
需要强制转换请用pd.to_numeric()
。
(完)
更新时间:2025-08-20 10:21:39 标签:pandas python 类型