簡體   English   中英

Perl PDL 是否有等價於 Math::Round::nearest()?

[英]Does Perl PDL have an equivalent of Math::Round::nearest()?

PDL是否已經有一種方法可以像Math::Round::nearest()那樣以某種精度對向量元素進行“舍入”? 我瀏覽了PDL::Math文檔,但沒有看到一個好的候選選項。

我可以 unpdl/re-pdl但這似乎開銷太大。

是否已經有一種矢量化的方式來做到這一點?

我試過這樣的事情:

$pdl = pdl [4.45, 5.55, 45];
$n = pdl [.1, .3, 10];
print rint($pdl/$n)*$n
[4.4 5.4 40]

但正如你所看到的,它並不能很好地工作,因為它應該四舍五入到最接近的精度。 這將是“正確”的輸出:

[4.5 5.6 50]

可以添加這樣的東西,但需要更清楚地指定; 它會對負數做什么? 它與floor / ceil / rint有何不同?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM