Source code for lpmd.utils.format

"""lpmd.utils.format."""
import re

import pandas as pd

LIST_NULL = ["…", "-", "x"]


[docs]def format_raw_str_year(series): """Format the series for "年次" column into integer one. Parameters ---------- series : pandas.core.series.Series "年次" column series. Returns ------- series_formatted : pandas.core.series.Series Formatted column series. """ if not isinstance(series, pd.Series): msg = "Specified series must be `pandas.core.series.Series`." raise TypeError(msg) series_formatted = ( series.str.replace("(", "(") .str.replace(")", ")") .replace(re.compile(r".*\("), "", regex=True) .replace(re.compile(r"\)"), "", regex=True) .astype(int) ) return series_formatted
[docs]def format_raw_qty(series): """Format the series on quantities into float one. Parameters ---------- series : pandas.core.series.Series Series on quantities. Returns ------- series_formatted : pandas.core.series.Series Formatted column series. """ if not isinstance(series, pd.Series): msg = "Specified series must be `pandas.core.series.Series`." raise TypeError(msg) series_formatted = series.copy() for val in LIST_NULL: series_formatted = series_formatted.replace(val, None) series_formatted = series_formatted.astype(float) return series_formatted