PDL::Bad#
Synopsis#
use PDL;
my $a = pdl [1, 2, 3];
$a->badflag(1);
$a->set(1, $a->badvalue);
print $a->nbad, "\n"; # 1
print $a->ngood, "\n"; # 2
Functions#
Other Functions#
setvaltobad#
setvaltobad($pdl, $val) — set elements equal to $val as bad. Upstream Bad.pd:625. Same signature as setbadtoval: pdl_run_setvaltobad(a, b, value). Engine restored 2026-04-19. Honours PDL_INPLACE so $x->inplace->setvaltobad(1) mutates $x.
setbadtoval#
setbadtoval($pdl, $val) — replace bad values with $val.
badmask#
badmask($pdl, $replacement) — replace bad values with $replacement.
setbadat#
setbadat($pdl, @indices) — set element at given indices to the bad value and enable the badflag.
setinftobad#
setinftobad($pdl) — set Inf/-Inf elements to bad value, enable badflag. Returns a new pdl (or modifies inplace if inplace flag set).
setnonfinitetobad#
setnonfinitetobad($pdl) — set NaN and Inf/-Inf elements to bad value, enable badflag. Returns a new pdl (or modifies inplace if inplace flag set). Combines setnantobad and setinftobad behavior.
isfinite#
isfinite($pdl) — returns a PDL of 1s for finite values, 0s for NaN/Inf/bad. Mirrors PDL::Bad::isfinite.