Skip to main content

PyStandardScaler

Struct PyStandardScaler 

Source
pub struct PyStandardScaler { /* private fields */ }
Expand description

Standardize features by removing the mean and scaling to unit variance.

The standard score of a sample x is calculated as:

z = (x - u) / s

where u is the mean of the training samples or zero if with_mean=False, and s is the standard deviation of the training samples or one if with_std=False.

Centering and scaling happen independently on each feature by computing the relevant statistics on the samples in the training set. Mean and standard deviation are then stored to be used on later data using :meth:transform.

Standardization of a dataset is a common requirement for many machine learning estimators: they might behave badly if the individual features do not more or less look like standard normally distributed data (e.g. Gaussian with 0 mean and unit variance).

§Parameters

copy : bool, default=True If False, try to avoid a copy and do inplace scaling instead. This is not guaranteed to always work inplace; e.g. if the data is not a NumPy array or scipy.sparse CSR matrix, a copy may still be returned.

with_mean : bool, default=True If True, center the data before scaling. This does not work (and will raise an exception) when attempted on sparse matrices, because centering them entails building a dense matrix which in common use cases is likely to be too large to fit in memory.

with_std : bool, default=True If True, scale the data to unit variance (or equivalently, unit standard deviation).

§Attributes

scale_ : ndarray of shape (n_features,) or None Per feature relative scaling of the data to achieve zero mean and unit variance. Generally this is calculated using np.sqrt(var_). If a variance is zero, we can’t achieve unit variance, and the data is left as-is, giving a scaling factor of 1. scale_ is equal to None when with_std=False.

mean_ : ndarray of shape (n_features,) or None The mean value for each feature in the training set. Equal to None when with_mean=False.

var_ : ndarray of shape (n_features,) or None The variance for each feature in the training set. Used to compute scale_. Equal to None when with_std=False.

n_features_in_ : int Number of features seen during :term:fit.

n_samples_seen_ : int The number of samples processed by the estimator. It will be reset on new calls to fit, but increments across partial_fit calls.

§Examples

from sklears_python import StandardScaler import numpy as np data = [[0, 0], [0, 0], [1, 1], [1, 1]] scaler = StandardScaler() scaler.fit(data) StandardScaler() print(scaler.mean_) [0.5 0.5] print(scaler.transform(data)) [[-1. -1.] [-1. -1.] [ 1. 1.] [ 1. 1.]] print(scaler.transform([[2, 2]])) [[3. 3.]]

Trait Implementations§

Source§

impl DerefToPyAny for PyStandardScaler

Source§

impl ExtractPyClassWithClone for PyStandardScaler

Source§

impl<'py> IntoPyObject<'py> for PyStandardScaler

Source§

type Target = PyStandardScaler

The Python output type
Source§

type Output = Bound<'py, <PyStandardScaler as IntoPyObject<'py>>::Target>

The smart pointer type to use. Read more
Source§

type Error = PyErr

The type returned in the event of a conversion error.
Source§

fn into_pyobject( self, py: Python<'py>, ) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>

Performs the conversion.
Source§

impl PyClass for PyStandardScaler

Source§

const NAME: &str = "StandardScaler"

Name of the class. Read more
Source§

type Frozen = False

Whether the pyclass is frozen. Read more
Source§

impl PyClassImpl for PyStandardScaler

Source§

const MODULE: Option<&str> = ::core::option::Option::None

Module which the class will be associated with. Read more
Source§

const IS_BASETYPE: bool = false

#[pyclass(subclass)]
Source§

const IS_SUBCLASS: bool = false

#[pyclass(extends=…)]
Source§

const IS_MAPPING: bool = false

#[pyclass(mapping)]
Source§

const IS_SEQUENCE: bool = false

#[pyclass(sequence)]
Source§

const IS_IMMUTABLE_TYPE: bool = false

#[pyclass(immutable_type)]
Source§

const RAW_DOC: &'static CStr = /// Standardize features by removing the mean and scaling to unit variance. /// /// The standard score of a sample `x` is calculated as: /// /// ```text /// z = (x - u) / s /// ``` /// /// where `u` is the mean of the training samples or zero if `with_mean=False`, /// and `s` is the standard deviation of the training samples or one if /// `with_std=False`. /// /// Centering and scaling happen independently on each feature by computing /// the relevant statistics on the samples in the training set. Mean and /// standard deviation are then stored to be used on later data using /// :meth:`transform`. /// /// Standardization of a dataset is a common requirement for many /// machine learning estimators: they might behave badly if the /// individual features do not more or less look like standard normally /// distributed data (e.g. Gaussian with 0 mean and unit variance). /// /// Parameters /// ---------- /// copy : bool, default=True /// If False, try to avoid a copy and do inplace scaling instead. /// This is not guaranteed to always work inplace; e.g. if the data is /// not a NumPy array or scipy.sparse CSR matrix, a copy may still be /// returned. /// /// with_mean : bool, default=True /// If True, center the data before scaling. /// This does not work (and will raise an exception) when attempted on /// sparse matrices, because centering them entails building a dense /// matrix which in common use cases is likely to be too large to fit in /// memory. /// /// with_std : bool, default=True /// If True, scale the data to unit variance (or equivalently, /// unit standard deviation). /// /// Attributes /// ---------- /// scale_ : ndarray of shape (n_features,) or None /// Per feature relative scaling of the data to achieve zero mean and unit /// variance. Generally this is calculated using `np.sqrt(var_)`. If a /// variance is zero, we can't achieve unit variance, and the data is left /// as-is, giving a scaling factor of 1. `scale_` is equal to `None` /// when `with_std=False`. /// /// mean_ : ndarray of shape (n_features,) or None /// The mean value for each feature in the training set. /// Equal to ``None`` when ``with_mean=False``. /// /// var_ : ndarray of shape (n_features,) or None /// The variance for each feature in the training set. Used to compute /// `scale_`. Equal to ``None`` when ``with_std=False``. /// /// n_features_in_ : int /// Number of features seen during :term:`fit`. /// /// n_samples_seen_ : int /// The number of samples processed by the estimator. /// It will be reset on new calls to fit, but increments across /// ``partial_fit`` calls. /// /// Examples /// -------- /// >>> from sklears_python import StandardScaler /// >>> import numpy as np /// >>> data = [[0, 0], [0, 0], [1, 1], [1, 1]] /// >>> scaler = StandardScaler() /// >>> scaler.fit(data) /// StandardScaler() /// >>> print(scaler.mean_) /// [0.5 0.5] /// >>> print(scaler.transform(data)) /// [[-1. -1.] /// [-1. -1.] /// [ 1. 1.] /// [ 1. 1.]] /// >>> print(scaler.transform([[2, 2]])) /// [[3. 3.]]

Docstring for the class provided on the struct or enum. Read more
Source§

const DOC: &'static CStr

Fully rendered class doc, including the text_signature if a constructor is defined. Read more
Source§

type Layout = <<PyStandardScaler as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<PyStandardScaler>

Description of how this class is laid out in memory
Source§

type BaseType = PyAny

Base class
Source§

type ThreadChecker = NoopThreadChecker

This handles following two situations: Read more
Source§

type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild

Immutable or mutable
Source§

type Dict = PyClassDummySlot

Specify this class has #[pyclass(dict)] or not.
Source§

type WeakRef = PyClassDummySlot

Specify this class has #[pyclass(weakref)] or not.
Source§

type BaseNativeType = PyAny

The closest native ancestor. This is PyAny by default, and when you declare #[pyclass(extends=PyDict)], it’s PyDict.
Source§

fn items_iter() -> PyClassItemsIter

Source§

fn lazy_type_object() -> &'static LazyTypeObject<Self>

Source§

fn dict_offset() -> Option<PyObjectOffset>

Used to provide the dictoffset slot (equivalent to tp_dictoffset)
Source§

fn weaklist_offset() -> Option<PyObjectOffset>

Used to provide the weaklistoffset slot (equivalent to tp_weaklistoffset
Source§

impl PyClassNewTextSignature for PyStandardScaler

Source§

const TEXT_SIGNATURE: &'static str = "(copy=True, with_mean=True, with_std=True)"

Source§

impl PyMethods<PyStandardScaler> for PyClassImplCollector<PyStandardScaler>

Source§

fn py_methods(self) -> &'static PyClassItems

Source§

impl PyTypeInfo for PyStandardScaler

Source§

const NAME: &str = <Self as ::pyo3::PyClass>::NAME

👎Deprecated since 0.28.0:

prefer using ::type_object(py).name() to get the correct runtime value

Class name.
Source§

const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE

👎Deprecated since 0.28.0:

prefer using ::type_object(py).module() to get the correct runtime value

Module name, if any.
Source§

fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject

Returns the PyTypeObject instance for this type.
Source§

fn type_object(py: Python<'_>) -> Bound<'_, PyType>

Returns the safe abstraction over the type object.
Source§

fn is_type_of(object: &Bound<'_, PyAny>) -> bool

Checks if object is an instance of this type or a subclass of this type.
Source§

fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool

Checks if object is an instance of this type.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<'py, T> IntoPyObjectExt<'py> for T
where T: IntoPyObject<'py>,

Source§

fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>

Converts self into an owned Python object, dropping type information.
Source§

fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>

Converts self into an owned Python object, dropping type information and unbinding it from the 'py lifetime.
Source§

fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>

Converts self into a Python object. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> PyErrArguments for T
where T: for<'py> IntoPyObject<'py> + Send + Sync,

Source§

fn arguments(self, py: Python<'_>) -> Py<PyAny>

Arguments for exception
Source§

impl<T> PyTypeCheck for T
where T: PyTypeInfo,

Source§

fn type_check(object: &Bound<'_, PyAny>) -> bool

Checks if object is an instance of Self, which may include a subtype. Read more
Source§

fn classinfo_object(py: Python<'_>) -> Bound<'_, PyAny>

Returns the expected type as a possible argument for the isinstance and issubclass function. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

Source§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
Source§

fn is_in_subset(&self) -> bool

Checks if self is actually part of its subset T (and can be converted to it).
Source§

fn to_subset_unchecked(&self) -> SS

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
Source§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Ungil for T
where T: Send,

Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V