我有一个浮点数数据框,我需要创建一个函数,该函数将采用一列并将所有值四舍五入为 N 个有效数字
所以该列可能看起来像这样:
123.949
23.87
1.9865
0.0129500
Run Code Online (Sandbox Code Playgroud)
如果我想四舍五入到 3 个有效数字,我会将列和 3 传递给函数来得到这个
124.0
23.9
1.99
0.013
Run Code Online (Sandbox Code Playgroud)
如何在不循环列的情况下有效地完成此操作?
我有一个方程可以计算一个数字的有效数字
round(x, N-int(floor(log10(abs(x))))
Run Code Online (Sandbox Code Playgroud)
但它不适用于系列或数据框
我有一个包含 3 列的数据框 df :
df=pd.DataFrame({
'User':['A','A','B','A','C','B','C'],
'Values':['x','y','z','p','q','r','s'],
'Date':[14,11,14,12,13,10,14]
})
Run Code Online (Sandbox Code Playgroud)
我想创建一个新的数据框,其中包含与每个用户的“日期”列中最高值相对应的行。例如,对于上面的数据帧,我希望所需的数据帧如下(它是 jpeg 图像):

谁能帮我解决这个问题吗?