pandas日常使用总结

2019-02-18 17:33:24 浏览数 (1)

总结使用pandas中遇到的问题

小数点的精度

在pandas里面有round,可以做四舍五入,但如果是只保留给定的位数,不做精度处理呢?那就不能使用round函数了。

代码语言:javascript复制
import pandas as pd
data = pd.DataFrame([[1.4354,2.65656,3.764534,4.5768564],[434.3436,76.2476,867.35,34.1354]],
                    columns = ['A','B','C','D'])

data

          A         B           C          D
0    1.4354   2.65656    3.764534   4.576856
1  434.3436  76.24760  867.350000  34.135400



## round
data.round(2)

        A      B       C      D
0    1.44   2.66    3.76   4.58
1  434.34  76.25  867.35  34.14



## 只做小数点的截取,引入新的函数
def export_result(num):
        num_x , num_y = str(num).split('.')
        num = float(num_x '.' num_y[0:2])       
        return num 

data.applymap(export_result)

        A      B       C      D
0    1.43   2.65    3.76   4.57
1  434.34  76.24  867.35  34.13


## 注意,若是data中有一列为整数,就会报错,这时需要将类型做转换
data = data.astype("float")
data.applymap(export_result)

0 人点赞