Case When in Series

tools.case_when.coalesce(df, columns, default_value=nan)

Coalesce column by list of column

Parameters:
  • df (Pandas DataFrame) –
  • columns (list or pandas index) –
  • default_value (value which replace None or NaN in return series) –
Returns:

Return type:

Pandas Series

Examples

>>> import pandas as pd
>>> from tidyframe import coalesce
>>> df = pd.DataFrame()
>>> df['a'] = [None, pd.np.NaN, pd.np.nan, pd.np.nan]
>>> df['b'] = [None, 4, 6, pd.np.nan]
>>> df['c'] = [None, pd.np.NaN, 6, pd.np.nan]
>>> coalesce(df, ['a', 'b', 'c'], default_value=10)
0    10.0
1     4.0
2     6.0
3    10.0
Name: a, dtype: float64
tools.case_when.fillna(*args)

Fill non null value

Parameters:*args (list or series) –
Returns:
Return type:list

Examples

>>> import pandas as pd
>>> from tidyframe import fillna
>>> fillna([None] * 3, [1, pd.np.NaN, None], [1, 2, 3])
[1, 2, 3]
tools.case_when.nvl(obj, default=nan, copy=True)

replace None or NaN value by default

Parameters:
  • obj (Series, list, or primitive variable types) –
  • default (defalut) –
  • copy (copy list or not if obj is list type) –
Returns:

Return type:

series or list or primitive variable types

Examples

>>> import pandas as pd
>>> from tidyframe.tools import nvl
>>> nvl(None, 10)
10
>>> test_list = [0, 1, None, pd.np.NaN]
>>> test_series = pd.Series(test_list)
>>> nvl(test_series, 10)
0     0.0
1     1.0
2    10.0
3    10.0
dtype: float64
tools.case_when.try_expect_raw(function)

A decorator which return first args when execpt happen

Parameters:*args (list or series) –
Returns:
Return type:list

Examples

>>> from tidyframe import try_expect_raw
>>> my_sum = try_expect_raw(lambda x, y: x + y)
>>> my_sum(1, y='a')
1