我有一个股票价格数据集,已四舍五入到小数点后两位(1234.56)
。我现在正在尝试四舍五入到每只股票都不同的特定值。以下是一些示例:
Current Stock Price Minimum Tick Increment Desired Output
123.45 .50 123.50
155.03 .10 155.00
138.24 .50 138.00
129.94 .10 129.90
... ... ...
我不太确定如何执行此操作,但愿意接受建议。
最佳答案
可能,
round(a/b)*b
会做这项工作。
> a <- seq(.1,1,.13)
> b <- c(.1,.1,.1,.2,.3,.3,.7)
> data.frame(a, b, out = round(a/b)*b)
a b out
1 0.10 0.1 0.1
2 0.23 0.1 0.2
3 0.36 0.1 0.4
4 0.49 0.2 0.4
5 0.62 0.3 0.6
6 0.75 0.3 0.6
7 0.88 0.7 0.7
关于R 舍入到最接近的 0.5 或 0.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8664976/