pub struct KdeDoSampler {
pub outcome: VariableId,
pub bandwidth: Option<f64>,
}Expand description
KDE do-sampler: sample from interventional SCM then smooth the outcome with a Gaussian KDE.
Fields§
§outcome: VariableIdOutcome variable.
bandwidth: Option<f64>Bandwidth (Silverman’s (1986) rule if None).
Implementations§
Source§impl KdeDoSampler
impl KdeDoSampler
Sourcepub fn new(outcome: VariableId) -> Self
pub fn new(outcome: VariableId) -> Self
Construct.
Sourcepub fn sample(
&self,
model: &CompiledCausalModel,
interventions: &[Intervention],
n_draws: usize,
rng: &mut CausalRng,
ws: &mut MechanismWorkspace,
ctx: &ExecutionContext,
) -> Result<DoSampleResult, ModelError>
pub fn sample( &self, model: &CompiledCausalModel, interventions: &[Intervention], n_draws: usize, rng: &mut CausalRng, ws: &mut MechanismWorkspace, ctx: &ExecutionContext, ) -> Result<DoSampleResult, ModelError>
Draw interventional samples and return KDE-ready values (+ bandwidth note).
§Errors
Sampling failures.
Sourcepub fn density(result: &DoSampleResult, x: f64) -> f64
pub fn density(result: &DoSampleResult, x: f64) -> f64
Evaluate KDE density at x given sampler values.
Trait Implementations§
Source§impl Clone for KdeDoSampler
impl Clone for KdeDoSampler
Source§fn clone(&self) -> KdeDoSampler
fn clone(&self) -> KdeDoSampler
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for KdeDoSampler
impl RefUnwindSafe for KdeDoSampler
impl Send for KdeDoSampler
impl Sync for KdeDoSampler
impl Unpin for KdeDoSampler
impl UnsafeUnpin for KdeDoSampler
impl UnwindSafe for KdeDoSampler
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> ForeignBufferOwner for T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more