首页 > 解决方案 > 根据其他列对数据框列进行四舍五入

问题描述

我有一个带有两个数字列 col“A”和 col“B”的数据框。我想通过舍入col“A”来创建一个col“C”,从col“B”获取significant_figure/decimal输入。实现它的方法是什么?

标签: python-3.xpandasdataframe

解决方案


使用自定义 lambda 函数或 lsit 理解zip

df = pd.DataFrame({'A': [0.1256, 0.25369],
                    'B':[2, 3]})

df['C'] = df.apply(lambda x: round(x.A, int(x.B)), axis=1)
#alternative solution
#df['C'] = [round(x, y) for x, y in zip(df.A, df.B)]

print (df)
         A  B      C
0  0.12560  2  0.130
1  0.25369  3  0.254

推荐阅读