Source code for whatstk.utils.utils

"""Utils."""

from typing import TYPE_CHECKING
import pandas as pd

if TYPE_CHECKING:  # pragma: no cover
    from whatstk._chat import BaseChat  # pragma: no cover


[docs]class ColnamesDf: """Access class constants using variable ``whatstk.utils.utils.COLNAMES_DF``. Example: Access constant ``COLNAMES_DF.DATE``: .. code-block:: python >>> from whatstk.utils.utils import COLNAMES_DF >>> COLNAMES_DF.DATE 'date' """ DATE = "date" """Date column""" USERNAME = "username" """Username column""" MESSAGE = "message" """Message column""" MESSAGE_LENGTH = "message_length" """Message length column"""
COLNAMES_DF = ColnamesDf() def _get_df(df: pd.DataFrame, chat: "BaseChat") -> pd.DataFrame: if (df is None) & (chat is None): raise ValueError("Please provide a chat, using either argument `df` or `chat`.") if (df is None) and (chat is not None): df = chat.df return df def _map_hformat_filename(filename: str) -> str: """Map hformat to valid filename (Linux, MacOS, Win). Args: filename (str): Header format. Returns: str: Mapped header format. """ filename = filename.replace(" ", "_").replace("/", "--").replace(":", ";") return filename