liting李

2021-04-15   阅读量: 520

Python

pandas赋值 为什么float类型转变成了int?

扫码加入数据分析学习群

从excel表格种读取数据,然后把一列的数据经过简单的加减乘除的数学运算后放到相应的另一列中(index相同,columns变化)。


完成这样一个功能,使用的是逐个赋值的方式,


data.iloc[i,Colu] = data.temp[i] #即把temp列的数据放到Colu列中

(其中Colu为变量)

调试中,发现data.temp[i]的数据明明是float类型,但是经过赋值后到data.iloc[i,Colu]就变成了int型。


原因:读取excel表格数据时,没有指定数据类型。


import pandas as pd

data= pd.read_excel(file_directory,index_col=0)

因此数据被默认为int型了。


解决方法:读取数据时,指定需要计算或赋值的列为float型。

# 指定数据类型
data= pd.read_excel(file_directory,index_col=0,dtype={'A_QTY': float,'B_QTY': float,'temp': float,})


133.3333 1 0 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子