我们经常需要对有浮点数的列需要保持精度,那么在pandas中该如何实现呢?这里提供一种方法,round方法 round常用用法有两种方式: 1、传入int,对所有列保持统一精度
. >>> import numpy as np >>> import pandas as pd >>> df = pd.DataFrame([(.21, .32), (.01, .6), (.66, .03), (.21, .183)],columns=['dogs', 'cats']) >>> df dogs cats 0 0.21 0.320 1 0.01 0.600 2 0.66 0.030 3 0.21 0.183 # 统一保持2位小数 >>> df.round(2) dogs cats 0 0.21 0.32 1 0.01 0.60 2 0.66 0.03 3 0.21 0.18 # 统一保持一位小数 >>> df.round(1) dogs cats 0 0.2 0.3 1 0.0 0.6 2 0.7 0.0 3 0.2 0.2 >>>2、传入dict,对指定列设置精度,key为列名,value为精度
# 指定列名设置精度,未指定的则保持原样 >>> df.round({'dogs': 2}) dogs cats 0 0.21 0.320 1 0.01 0.600 2 0.66 0.030 3 0.21 0.183 # 两列分别设置不同的精度 >>> df.round({'dogs':2, 'cats':1}) dogs cats 0 0.21 0.3 1 0.01 0.6 2 0.66 0.0 3 0.21 0.2哈哈,以上就是python小工具关于pandas小数点后保留2位数字的介绍,有兴趣的话欢迎关注: python小工具,一起学习python和pandas