dataframe的数据格式转化问题
1.Pandas所支持的数据类型包括以下几种:
-
float
-
int
-
bool
-
datetime64[ns]
-
datetime64[ns, tz]
-
timedelta[ns]
-
category
-
object
2.查看df数据类型
df.dtypes
3.如果我们需要对列数据进行相互之间的运算的吧,必须注意的一点是:
两列的数据类型是否是相同的!!
如果一个object类型与int64的类型相加,便会发生错误
错误提示可能如下:
TypeError: ufunc 'add' not contain a loop with signature matching types dtype('<U32') dtype('<U32') dtype('<U32')
4.将object格式数据转化为数值型数据
object格式的数据导入到excel表里显示的是文本
df=df.apply(pd.to_numeric,errors="ignore")
注意:df.convert_objects(convert_numeric=True)此方法已过时,不适用于新版的pandas,报错信息如下:
AttributeError: 'DataFrame' object has no attribute 'convert_objects'
帖子链接:https://stackoverflow.com/questions/33126477/pandas-convert-objectsconvert-numeric-true-deprecated/34696424#34696424