每次我尝试 infer_objects() 方法时,即使遵循官方文档 (link),我也会收到此错误:
AttributeError: 'DataFrame' object has no attribute 'infer_objects'
代码示例:
import pandas as pd
df = pd.DataFrame({"A": ["a", 1, 2, 3]})
df = df.iloc[1:]
df = df.infer_objects()
为什么会出现此错误?
请您参考如下方法:
我可以支持 Jon Clements 的回答和 F. Varlets 问题:更新 pandas works
避免convert_objects和 infer_objects :
手动设置数据类型:
In [21]: df=pd.DataFrame([['a','1'],['b','2']], columns=['x','y'])
In [22]: df.dtypes
Out[22]:
x object
y object
dtype: object
In [23]: for k in {'x':'object','y':'int'}:
...: df[k]=pd.to_numeric(df[k], errors='ignore')
...:
In [24]: df.dtypes
Out[24]:
x object
y int64
dtype: object
自动数据类型转换:
In [10]: df=pd.DataFrame([['a','1'],['b','2']], columns=['x','y'])
In [11]: df.dtypes
Out[11]:
x object
y object
dtype: object
In [12]: for k in list(df):
...: ...: df[k]=pd.to_numeric(df[k], errors='ignore')
...:
In [13]: df.dtypes
Out[13]:
x object
y int64
dtype: object