2024年07月04日 python dataframe中所有值取小数后一位 极客笔记
在数据分析和处理过程中,经常会遇到需要对DataFrame中的数值进行精确处理的情况。有时候我们希望将DataFrame中的所有数值保留一位小数,以提高数据的准确性和可读性。本文将为大家介绍如何使用Python对DataFrame中的所有数值取小数后一位。
在Python中,我们可以使用 round() 方法来取小数。为了将DataFrame中的所有数值取小数后一位,我们可以通过 applymap() 方法和 lambda 函数来操作。
import pandas as pd
# 创建一个示例DataFrame
data = {'A': [1.23456, 2.34567, 3.45678],
'B': [4.56789, 5.67890, 6.78901]}
df = pd.DataFrame(data)
# 使用 applymap 方法和 lambda 函数将所有值取小数后一位
df_rounded = df.applymap(lambda x: round(x, 1))
print(df_rounded)
运行结果如下:
A B
0 1.2 4.6
1 2.3 5.7
2 3.5 6.8
通过上述代码,我们成功将DataFrame中的所有数值取小数后一位,得到了精确到一位小数的结果。
有时候我们希望将DataFrame中的数值都保留两位小数,而不是一位小数。这时,我们可以通过 round() 方法的第二个参数指定小数点后的位数。
import pandas as pd
# 创建一个示例DataFrame
data = {'A': [1.23456, 2.34567, 3.45678],
'B': [4.56789, 5.67890, 6.78901]}
df = pd.DataFrame(data)
# 使用 applymap 方法和 lambda 函数将所有值取小数后两位
df_rounded = df.applymap(lambda x: round(x, 2))
print(df_rounded)
运行结果如下:
A B
0 1.23 4.57
1 2.35 5.68
2 3.46 6.79
通过上述代码,我们成功将DataFrame中的所有数值取小数后两位,得到了精确到两位小数的结果。
在对DataFrame中的数值取小数后一位时,需要注意一些细节。
本文链接:http://so.lmcjl.com/news/7850/