python dataframe 部分或所有数据类型转换

转自:https://blog.csdn.net/qq_34490873/article/details/81205523

读取原始数据的时候,经常会遇到字符型变量读入变成了数值型,比较定性的就是商户ID,银行卡号这类标识型数据,
可以使用三种方法解决这个问题:

第一种:在读取数据的时候,指定数据类型

data = pd.read_csv('test.txt',sep = '|',dtype = 'str')

上面说的是,
1,读取工作文件路径中标题为test.txt的文件,
2,采用的分割符是’|’分隔符
3,所有的列读取的数据类型为字符串类型

第二种:使用转换函数:
2.1:将所有数据转换为字符串

dataframe=dataframe.astype(str)

2.2:将某列转换为字符串

data = data.astype({'outcome':'float','age':'int'})

上面代码说的是:
1,对data这个df进行某列的数据类型转换
2,将outcome这列转换为 float类型
3,将age这列转换为int类型

第三种:使用dataframe的apply函数或者map函数

data['交易金额'] = data.交易金额.map(lambda x:float(x))

上面代码说的是:
1,对data这个df进行map操作
2,构造lambda函数,返回的是float(x)
3,将返回的值赋值给data的’交易金额’列

你可能感兴趣的:(pandas)