Struct smartnoise_validator::proto::DpMedian [−][src]
DPMedian Component
Returns differentially private estimates of the median of each column of the data.
This struct represents an abstract computation. Arguments are provided via the graph. Additional options are set via the fields on this struct. The return is the result of the dp_median on the arguments.
Arguments
data
- Array - Atomic type must be numeric. For Gumbel mechanism, must be limited to a single column of data.candidates
- Array - Set from which the Exponential mechanism will return an element. Type must match with atomic type of data. This value must be column-conformable with data. Only useful for Exponential mechanism.lower
- Array - Estimated minimum possible value of the statistic. Only useful for the snapping mechanism.upper
- Array - Estimated maximum possible value of the statistic. Only useful for the snapping mechanism.
Returns
Value
- Array - Differentially private estimates of the median of each column of the data.
Fields
mechanism: String
Privatizing mechanism to use. Value must be one of [Exponential
, Laplace
, Snapping
, Gaussian
, AnalyticGaussian
, Gumbel
]. Automatic
chooses Exponential
if candidates provided, otherwise chooses Laplace
.
privacy_usage: Vec<PrivacyUsage>
Object describing the type and amount of privacy to be used for the mechanism release. For Gumbel mechanism, must be limited to a single column of data. Atomic data type value must be float. Example value: {‘epsilon’: 0.5}
interpolation: String
Interpolation strategy. One of [lower
, upper
, midpoint
, nearest
, linear
]
Trait Implementations
impl Clone for DpMedian
[src]
impl Debug for DpMedian
[src]
impl Default for DpMedian
[src]
impl Expandable for DpMedian
[src]
fn expand_component(
&self,
_privacy_definition: &Option<PrivacyDefinition>,
component: &Component,
_public_arguments: &IndexMap<IndexKey, &Value>,
properties: &NodeProperties,
component_id: u32,
_maximum_id: u32
) -> Result<ComponentExpansion>
[src]
&self,
_privacy_definition: &Option<PrivacyDefinition>,
component: &Component,
_public_arguments: &IndexMap<IndexKey, &Value>,
properties: &NodeProperties,
component_id: u32,
_maximum_id: u32
) -> Result<ComponentExpansion>
impl Message for DpMedian
[src]
fn encode_raw<B>(&self, buf: &mut B) where
B: BufMut,
[src]
B: BufMut,
fn merge_field<B>(
&mut self,
tag: u32,
wire_type: WireType,
buf: &mut B,
ctx: DecodeContext
) -> Result<(), DecodeError> where
B: Buf,
[src]
&mut self,
tag: u32,
wire_type: WireType,
buf: &mut B,
ctx: DecodeContext
) -> Result<(), DecodeError> where
B: Buf,
fn encoded_len(&self) -> usize
[src]
fn clear(&mut self)
[src]
pub fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError> where
B: BufMut,
[src]
B: BufMut,
pub fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError> where
B: BufMut,
[src]
B: BufMut,
pub fn decode<B>(buf: B) -> Result<Self, DecodeError> where
Self: Default,
B: Buf,
[src]
Self: Default,
B: Buf,
pub fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
Self: Default,
B: Buf,
[src]
Self: Default,
B: Buf,
pub fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError> where
B: Buf,
[src]
B: Buf,
pub fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError> where
B: Buf,
[src]
B: Buf,
impl PartialEq<DpMedian> for DpMedian
[src]
impl Report for DpMedian
[src]
fn summarize(
&self,
node_id: u32,
component: &Component,
_public_arguments: IndexMap<IndexKey, &Value>,
properties: NodeProperties,
release: &Value,
variable_names: Option<&Vec<IndexKey>>
) -> Result<Option<Vec<JSONRelease>>>
[src]
&self,
node_id: u32,
component: &Component,
_public_arguments: IndexMap<IndexKey, &Value>,
properties: NodeProperties,
release: &Value,
variable_names: Option<&Vec<IndexKey>>
) -> Result<Option<Vec<JSONRelease>>>
impl StructuralPartialEq for DpMedian
[src]
Auto Trait Implementations
impl RefUnwindSafe for DpMedian
impl Send for DpMedian
impl Sync for DpMedian
impl Unpin for DpMedian
impl UnwindSafe for DpMedian
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src]
V: MultiLane<T>,