modin.pandas.Series.mod¶
- Series.mod(other, level=None, fill_value=None, axis=0)[source] (https://github.com/snowflakedb/snowpark-python/blob/v1.26.0/snowpark-python/src/snowflake/snowpark/modin/plugin/extensions/series_overrides.py#L769-L775)¶
Return Modulo of series and other, element-wise (binary operator mod).
Equivalent to
series % other
, but with support to substitute a fill_value for missing data in either one of the inputs.- Parameters:
other (Series or scalar value) –
level (int or name) – Broadcast across a level, matching Index values on the passed MultiIndex level.
fill_value (None or float value, default None (NaN)) – Fill existing missing (NaN) values, and any new element needed for successful Series alignment, with this value before computation. If data in both corresponding Series locations is missing the result of filling (at that location) will be missing.
axis ({0 or 'index'}) – Unused. Parameter needed for compatibility with DataFrame.
- Returns:
The result of the operation.
- Return type:
See also
Series.rmod
Reverse of the Modulo operator, see Python documentation (https://docs.python.org/3/reference/datamodel.html#emulating-numeric-types) for more details.
Caution
Snowpark pandas API computes mod differently from pandas and Python. Snowpark pandas API only supports numeric data with the mod operator. Below is a table highlighting the differences in modulo computation for Python, pandas, and Snowpark pandas. +—————————+—————————+—————————+ | Python | pandas | Snowpark pandas | +—————————+—————————+—————————+ | 7 % 5 = 2 | 7 % 5 = 2 | 7 % 5 = 2 | +—————————+—————————+—————————+ | 7 % -5 = -3 | 7 % -5 = -3 | 7 % -5 = 2 | +—————————+—————————+—————————+ | -7 % 5 = 3 | -7 % 5 = 3 | -7 % 5 = -2 | +—————————+—————————+—————————+ | -7 % -5 = -2 | -7 % -5 = -2 | -7 % -5 = -2 | +—————————+—————————+—————————+
Caution
In Snowpark pandas API, whenever a binary operation involves a NULL value, the result will preserve NULL values, e.g. NULL.mod(<other>) will yield NULL.
Caution
Snowpark pandas API denotes invalid numeric results with None while pandas uses NaN.
Caution
Snowpark pandas API does not support fill_value and level except for default values.
Examples
>>> a = pd.Series([1, 2, 0, np.nan], index=['a', 'b', 'c', 'd']) >>> a a 1.0 b 2.0 c 0.0 d NaN dtype: float64 >>> b = pd.Series([2, 1, 3, np.nan, 1], index=['a', 'b', 'c', 'd', 'f']) >>> b a 2.0 b 1.0 c 3.0 d NaN f 1.0 dtype: float64 >>> a.mod(b) a 1.0 b 0.0 c 0.0 d NaN f NaN dtype: float64