Detail: IndexYear: Method

Overview: IndexYear: Method

IndexYear.__array__(dtype=None)

Support the __array__ interface, returning an array of values.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.__array__()
['1517' '1520' '1518']
IndexYear.__array_ufunc__(ufunc, method, *args, **kwargs)

Support for NumPy elements or arrays on the left hand of binary operators.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> np.array((0, 1, 0)) * ix
UFuncTypeError(<ufunc 'multiply'>, (dtype('int64'), dtype('<M8[Y]')))
IndexYear.__bool__()

Raises ValueError to prohibit ambiguous use of truthy evaluation.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> bool(ix)
ErrorNotTruthy('The truth value of a container is ambiguous. For a truthy indicator of non-empty status, use the `size` attribute.')
IndexYear.__copy__()

Return shallow copy of this Index.

>>> import copy
>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> copy.copy(ix)
<IndexYear>
1517
1520
1518
<datetime64[Y]>
IndexYear.__deepcopy__(memo)
>>> import copy
>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> copy.deepcopy(ix)
<IndexYear>
1517
1520
1518
<datetime64[Y]>
IndexYear.__len__()
>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> len(ix)
3
IndexYear.all(axis=0, skipna=True, out=None)

Logical and over values along the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.all()
True
IndexYear.any(axis=0, skipna=True, out=None)

Logical or over values along the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.any()
True
IndexYear.astype(dtype)

Return an Index with type determined by dtype argument. If a datetime64 dtype is provided, the appropriate Index subclass will be returned. Note that for Index, this is a simple function, whereas for IndexHierarchy, this is an interface exposing both a callable and a getitem interface.

Parameters:

dtype – A value suitable for specyfying a NumPy dtype, such as a Python type (float), NumPy array protocol strings (‘f8’), or a dtype instance.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.astype(str)
<Index>
1517
1520
1518
<<U22>
IndexYear.copy()

Return shallow copy of this Index.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.copy()
<IndexYear>
1517
1520
1518
<datetime64[Y]>
IndexYear.cumprod(axis=0, skipna=True)

Return the cumulative product over the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.cumprod()
UFuncTypeError(<ufunc 'multiply'>, (dtype('<M8[Y]'), dtype('<M8[Y]')))
IndexYear.cumsum(axis=0, skipna=True)

Return the cumulative sum over the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.cumsum()
UFuncTypeError(<ufunc 'add'>, (dtype('<M8[Y]'), dtype('<M8[Y]')))
IndexYear.difference(*others)

Perform difference with another Index, container, or NumPy array. Retains order.

>>> ix1 = sf.IndexYear(('1517', '1520', '1518'))
>>> ix1
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix2 = sf.IndexYear(('2022', '2021', '2018'))
>>> ix2
<IndexYear>
2022
2021
2018
<datetime64[Y]>
>>> ix1.difference(ix2)
<IndexYear>
1517
1520
1518
<datetime64[Y]>
IndexYear.dropfalsy()

Return a new Index after removing values of NaN or None.

>>> ix = sf.IndexYear(('1620', 'NaT', '1619'))
>>> ix
<IndexYear>
1620
NaT
1619
<datetime64[Y]>
>>> ix.dropfalsy()
<IndexYear>
1620
1619
<datetime64[Y]>
IndexYear.dropna()

Return a new Index after removing values of NaN or None.

>>> ix = sf.IndexYear(('1620', 'NaT', '1619'))
>>> ix
<IndexYear>
1620
NaT
1619
<datetime64[Y]>
>>> ix.dropna()
<IndexYear>
1620
1619
<datetime64[Y]>
IndexYear.equals(other, *, compare_name=False, compare_dtype=False, compare_class=False, skipna=True)

Return a bool from comparison to any other object.

Parameters:
  • compare_name – Include equality of the container’s name (and all composed containers) in the comparison.

  • compare_dtype – Include equality of the container’s dtype (and all composed containers) in the comparison.

  • compare_class – Include equality of the container’s class (and all composed containers) in the comparison.

  • skipna – If True, comparisons between missing values are equal.

>>> ix1 = sf.IndexYear(('1517', '1520', '1518'))
>>> ix1
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix2 = sf.IndexYear(('2022', '2021', '2018'))
>>> ix2
<IndexYear>
2022
2021
2018
<datetime64[Y]>
>>> ix1.equals(ix2)
False
IndexYear.fillfalsy(value)

Return an Index with replacing falsy values with the supplied value.

Parameters:

value – Value to be used to replace missing values (NaN or None).

>>> ix = sf.IndexYear(('1620', 'NaT', '1619'))
>>> ix
<IndexYear>
1620
NaT
1619
<datetime64[Y]>
>>> ix.fillfalsy('A')
ValueError('Error parsing datetime string "A" at position 0')
IndexYear.fillna(value)

Return an Index with replacing null (NaN or None) with the supplied value.

Parameters:

value – Value to be used to replace missing values (NaN or None).

>>> ix = sf.IndexYear(('1620', 'NaT', '1619'))
>>> ix
<IndexYear>
1620
NaT
1619
<datetime64[Y]>
>>> ix.fillna(0)
<IndexYear>
1620
1970
1619
<datetime64[Y]>
IndexYear.head(count=5)

Return a Index consisting only of the top elements as specified by count.

Parameters:

count – Number of elements to be returned from the top of the Index

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.head(2)
<IndexYear>
1517
1520
<datetime64[Y]>
IndexYear.iloc_searchsorted(values, *, side_left=True)

Given a sorted Series, return the iloc (integer) position(s) at which insertion in values would retain sort order.

Parameters:
  • values – a single value, or iterable of values.

  • side_left – If True, the index of the first suitable location found is given, else return the last such index. If matching an existing value, side_left==True will return that position, side_left==Right will return the next position (or the length).

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.iloc_searchsorted('c')
ValueError('Error parsing datetime string "c" at position 0')
IndexYear.intersection(*others)

Perform intersection with one or many Index, container, or NumPy array. Identical comparisons retain order.

>>> ix1 = sf.IndexYear(('1517', '1520', '1518'))
>>> ix1
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix2 = sf.IndexYear(('2022', '2021', '2018'))
>>> ix2
<IndexYear>
2022
2021
2018
<datetime64[Y]>
>>> ix1.intersection(ix2)
<IndexYear>
<datetime64[Y]>
IndexYear.isin(other)

Return a Boolean array showing True where a label is found in other. If other is a multidimensional array, it is flattened.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.isin(('1518',))
[False False False]
IndexYear.label_widths_at_depth(depth_level=0)

A generator of pairs, where each pair is the label and the contiguous count of that label found at the depth specified by depth_level.

Parameters:

depth_level – a depth level, starting from zero.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> tuple(ix.label_widths_at_depth(0))
((numpy.datetime64('1517'), 1), (numpy.datetime64('1520'), 1), (numpy.datetime64('1518'), 1))
IndexYear.level_add(level, *, index_constructor=None)

Return an IndexHierarchy with an added root level.

Parameters:
  • level – A hashable to used as the new root.

  • *

  • index_constructor

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.level_add('A')
<IndexHierarchy>
A                1517
A                1520
A                1518
<<U1>            <datetime64[Y]>
IndexYear.loc_searchsorted(values, *, side_left=True, fill_value=nan)

Given a sorted Series, return the loc (label) position(s) at which insertion in values would retain sort order.

Parameters:
  • values – a single value, or iterable of values.

  • side_left – If True, the index of the first suitable location found is given, else return the last such index. If matching an existing value, side_left==True will return that position, side_left==Right will return the next position (or the length).

  • fill_value – A value to be used to fill the label beyond the last label.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.loc_searchsorted('c')
ValueError('Error parsing datetime string "c" at position 0')
IndexYear.loc_to_iloc(key)

Given a label (loc) style key (either a label, a list of labels, a slice, or a Boolean selection), return the index position (iloc) style key. Keys that are not found will raise a KeyError or a sf.LocInvalid error.

Parameters:

key – a label key.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.loc_to_iloc('d')
ValueError('Error parsing datetime string "d" at position 0')
>>> ix.loc_to_iloc(['a', 'e'])
ValueError('Error parsing datetime string "a" at position 0')
>>> ix.loc_to_iloc(slice('c', None))
ValueError('Error parsing datetime string "c" at position 0')
IndexYear.max(axis=0, skipna=True)

Return the maximum along the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.max()
1520
IndexYear.mean(axis=0, skipna=True, out=None)

Return the mean along the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.mean()
UFuncTypeError(<ufunc 'add'>, (dtype('<M8[Y]'), dtype('<M8[Y]')))
IndexYear.median(axis=0, skipna=True, out=None)

Return the median along the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.median()
UFuncTypeError(<ufunc 'add'>, (dtype('<M8[Y]'), dtype('<M8[Y]')))
IndexYear.min(axis=0, skipna=True, out=None)

Return the minimum along the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.min()
1517
IndexYear.prod(axis=0, skipna=True, allna=1, out=None)

Return the product along the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.prod()
UFuncTypeError(<ufunc 'multiply'>, (dtype('<M8[Y]'), dtype('<M8[Y]')))
IndexYear.relabel(mapper)

Return a new Index with labels replaced by the callable or mapping; order will be retained. If a mapping is used, the mapping need not map all origin keys.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.relabel(lambda l: l.astype('<M8[ms]').astype(object).day)
ErrorInitIndexNonUnique('Labels have non-unique values. Examples from iterators not are available.')
IndexYear.rename(name)

Return a new Frame with an updated name attribute.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.rename('y')
<IndexYear: y>
1517
1520
1518
<datetime64[Y]>
IndexYear.roll(shift)

Return an Index with values rotated forward and wrapped around (with a postive shift) or backward and wrapped around (with a negative shift).

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.roll(2)
<IndexYear>
1520
1518
1517
<datetime64[Y]>
IndexYear.sample(count=1, *, seed=None)

Randomly (optionally made deterministic with a fixed seed) extract items from the container to return a subset of the container.

Parameters:
  • select. (Number of elements to) –

  • selection. (Initial state of random) –

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.sample(2, seed=0)
<IndexYear>
1520
1518
<datetime64[Y]>
IndexYear.sort(ascending=True, kind='mergesort', key=None)

Return a new Index with the labels sorted.

Parameters:
  • ascending – If True, sort in ascending order; if False, sort in descending order.

  • kind – Name of the sort algorithm as passed to NumPy.

  • key – A function that is used to pre-process the selected columns or rows and derive new values to sort by.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.sort()
<IndexYear>
1517
1518
1520
<datetime64[Y]>
>>> ix.sort(ascending=False)
<IndexYear>
1520
1518
1517
<datetime64[Y]>
IndexYear.std(axis=0, skipna=True, ddof=0, out=None)

Return the standard deviaton along the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.std()
UFuncTypeError(<ufunc 'add'>, (dtype('<M8[Y]'), dtype('<M8[Y]')))
IndexYear.sum(axis=0, skipna=True, allna=0, out=None)

Sum values along the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.sum()
UFuncTypeError(<ufunc 'add'>, (dtype('<M8[Y]'), dtype('<M8[Y]')))
IndexYear.tail(count=5)

Return a Index consisting only of the bottom elements as specified by count.

Parameters:

count – Number of elements to be returned from the bottom of the Index

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.tail(2)
<IndexYear>
1520
1518
<datetime64[Y]>
IndexYear.union(*others)

Perform union with another Index, container, or NumPy array. Identical comparisons retain order.

>>> ix1 = sf.IndexYear(('1517', '1520', '1518'))
>>> ix1
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix2 = sf.IndexYear(('2022', '2021', '2018'))
>>> ix2
<IndexYear>
2022
2021
2018
<datetime64[Y]>
>>> ix1.union(ix2)
<IndexYear>
1517
1518
1520
2018
2021
2022
<datetime64[Y]>
IndexYear.unique(depth_level=0, order_by_occurrence=False)

Return a NumPy array of unique values.

Parameters:
  • depth_level – defaults to 0 for for a 1D Index.

  • order_by_occurrence – for 1D indices, this argument is a no-op. Provided for compatibility with IndexHierarchy.

Returns:

numpy.ndarray

>>> ix = sf.IndexYear(('1620', 'NaT', '1619'))
>>> ix
<IndexYear>
1620
NaT
1619
<datetime64[Y]>
>>> ix.unique()
['1620'  'NaT' '1619']
IndexYear.values_at_depth(depth_level=0)

Return an NP array for the depth_level specified.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.values_at_depth(0)
['1517' '1520' '1518']
IndexYear.var(axis=0, skipna=True, ddof=0, out=None)

Return the variance along the specified axis.

Parameters:
  • axis – Axis, defaulting to axis 0.

  • skipna – Skip missing (NaN) values, defaulting to True.

>>> ix = sf.IndexYear(('1517', '1520', '1518'))
>>> ix
<IndexYear>
1517
1520
1518
<datetime64[Y]>
>>> ix.var()
UFuncTypeError(<ufunc 'add'>, (dtype('<M8[Y]'), dtype('<M8[Y]')))

IndexYear: Constructor | Exporter | Attribute | Method | Dictionary-Like | Display | Selector | Iterator | Operator Binary | Operator Unary | Accessor Values | Accessor Datetime | Accessor String | Accessor Regular Expression | Accessor Hashlib | Accessor Type Clinic