pub struct ModeSingleFn;Expand description
Returns the most frequently occurring value in a data set.
MODE.SNGL returns a single mode value and reports #N/A if no value repeats.
§Remarks
- Returns the first mode encountered after sorting when frequencies tie.
- Returns
#N/Awhen every numeric value appears only once. - Alias
MODEis supported.
§Examples
title: "Single mode from scalar arguments"
formula: "=MODE.SNGL(1,2,2,3)"
expected: 2title: "Single mode from a range"
grid:
A1: 4
A2: 4
A3: 6
A4: 6
A5: 6
formula: "=MODE.SNGL(A1:A5)"
expected: 6related:
- MODE.MULT
- MEDIAN
- AVERAGE
faq:
- q: "When does MODE.SNGL return #N/A?"
a: "It returns #N/A when no value repeats in the numeric dataset."Trait Implementations§
Source§impl Debug for ModeSingleFn
impl Debug for ModeSingleFn
Source§impl Function for ModeSingleFn
[formualizer-docgen:schema:start]
Name: MODE.SNGL
Type: ModeSingleFn
Min args: 1
Max args: variadic
Variadic: true
Signature: MODE.SNGL(arg1…: number@range)
Arg schema: arg1{kinds=number,required=true,shape=range,by_ref=false,coercion=NumberLenientText,max=None,repeating=None,default=false}
Caps: PURE, REDUCTION, NUMERIC_ONLY
[formualizer-docgen:schema:end]
impl Function for ModeSingleFn
[formualizer-docgen:schema:start] Name: MODE.SNGL Type: ModeSingleFn Min args: 1 Max args: variadic Variadic: true Signature: MODE.SNGL(arg1…: number@range) Arg schema: arg1{kinds=number,required=true,shape=range,by_ref=false,coercion=NumberLenientText,max=None,repeating=None,default=false} Caps: PURE, REDUCTION, NUMERIC_ONLY [formualizer-docgen:schema:end]
fn name(&self) -> &'static str
Source§fn aliases(&self) -> &'static [&'static str]
fn aliases(&self) -> &'static [&'static str]
Optional list of additional alias names (case-insensitive) that should resolve to this
function. Default: empty slice. Implementors can override to expose legacy names.
Returned slice must have ’static lifetime (typically a static array reference).
fn min_args(&self) -> usize
fn variadic(&self) -> bool
fn arg_schema(&self) -> &'static [ArgSchema]
Source§fn eval<'a, 'b, 'c>(
&self,
args: &'c [ArgumentHandle<'a, 'b>],
_ctx: &dyn FunctionContext<'b>,
) -> Result<CalcValue<'b>, ExcelError>
fn eval<'a, 'b, 'c>( &self, args: &'c [ArgumentHandle<'a, 'b>], _ctx: &dyn FunctionContext<'b>, ) -> Result<CalcValue<'b>, ExcelError>
The unified evaluation path. Read more
fn namespace(&self) -> &'static str
fn volatile(&self) -> bool
fn function_salt(&self) -> u64
Source§fn eval_reference<'a, 'b, 'c>(
&self,
_args: &'c [ArgumentHandle<'a, 'b>],
_ctx: &dyn FunctionContext<'b>,
) -> Option<Result<ReferenceType, ExcelError>>
fn eval_reference<'a, 'b, 'c>( &self, _args: &'c [ArgumentHandle<'a, 'b>], _ctx: &dyn FunctionContext<'b>, ) -> Option<Result<ReferenceType, ExcelError>>
Optional reference result path. Only called by the interpreter/engine
when the callsite expects a reference (e.g., range combinators, by-ref
argument positions, or spill sources). Read more
Source§fn dispatch<'a, 'b, 'c>(
&self,
args: &'c [ArgumentHandle<'a, 'b>],
ctx: &dyn FunctionContext<'b>,
) -> Result<CalcValue<'b>, ExcelError>
fn dispatch<'a, 'b, 'c>( &self, args: &'c [ArgumentHandle<'a, 'b>], ctx: &dyn FunctionContext<'b>, ) -> Result<CalcValue<'b>, ExcelError>
Dispatch to the unified evaluation path with automatic argument validation.
Auto Trait Implementations§
impl Freeze for ModeSingleFn
impl RefUnwindSafe for ModeSingleFn
impl Send for ModeSingleFn
impl Sync for ModeSingleFn
impl Unpin for ModeSingleFn
impl UnsafeUnpin for ModeSingleFn
impl UnwindSafe for ModeSingleFn
Blanket Implementations§
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
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