Skip to content

Datetime

src.dx.datatypes.date_time.generate_datetime_series(num_rows)

Generate a series of random datetime.datetime values.

Parameters:

Name Type Description Default
num_rows int

Number of rows to generate

required
Source code in src/dx/datatypes/date_time.py
def generate_datetime_series(num_rows: int) -> pd.Series:
    """
    Generate a series of random `datetime.datetime` values.

    Parameters
    ----------
    num_rows: int
        Number of rows to generate
    """
    return pd.Series(
        [
            (
                pd.Timestamp("now") + pd.Timedelta(f"{np.random.randint(-1000, 1000)} hours")
            ).to_pydatetime()
            for _ in range(num_rows)
        ]
    )

src.dx.datatypes.date_time.generate_date_series(num_rows)

Generate a series of random datetime.date values.

Parameters:

Name Type Description Default
num_rows int

Number of rows to generate

required
Source code in src/dx/datatypes/date_time.py
def generate_date_series(num_rows: int) -> pd.Series:
    """
    Generate a series of random `datetime.date` values.

    Parameters
    ----------
    num_rows: int
        Number of rows to generate
    """
    return pd.Series(
        [
            (pd.Timestamp("now") + pd.Timedelta(f"{np.random.randint(-1000, 1000)} hours")).date()
            for _ in range(num_rows)
        ]
    )

src.dx.datatypes.date_time.generate_time_series(num_rows)

Generate a series of random datetime.time values.

Parameters:

Name Type Description Default
num_rows int

Number of rows to generate

required
Source code in src/dx/datatypes/date_time.py
def generate_time_series(num_rows: int) -> pd.Series:
    """
    Generate a series of random `datetime.time` values.

    Parameters
    ----------
    num_rows: int
        Number of rows to generate
    """
    return pd.Series(
        [
            (pd.Timestamp("now") + pd.Timedelta(f"{np.random.randint(-1000, 1000)} hours")).time()
            for _ in range(num_rows)
        ]
    )

src.dx.datatypes.date_time.generate_time_period_series(num_rows)

Generate a series of random pd.Period values.

Parameters:

Name Type Description Default
num_rows int

Number of rows to generate

required
Source code in src/dx/datatypes/date_time.py
def generate_time_period_series(num_rows: int) -> pd.Series:
    """
    Generate a series of random `pd.Period` values.

    Parameters
    ----------
    num_rows: int
        Number of rows to generate
    """
    return pd.Series(
        [
            (
                pd.Timestamp("now") + pd.Timedelta(f"{np.random.randint(-1000, 1000)} hours")
            ).to_period(freq="W")
            for _ in range(num_rows)
        ]
    )

src.dx.datatypes.date_time.generate_time_interval_series(num_rows)

Generate a series of random pd.Interval values with pd.Timestamp left/right values.

Parameters:

Name Type Description Default
num_rows int

Number of rows to generate

required
Source code in src/dx/datatypes/date_time.py
def generate_time_interval_series(num_rows: int) -> pd.Series:
    """
    Generate a series of random `pd.Interval` values with `pd.Timestamp` left/right values.

    Parameters
    ----------
    num_rows: int
        Number of rows to generate
    """
    return pd.Series(
        [
            pd.Interval(
                pd.Timestamp("now") + pd.Timedelta(f"{np.random.randint(-1000, 0)} hours"),
                pd.Timestamp("now") + pd.Timedelta(f"{np.random.randint(0, 1000)} hours"),
            )
            for _ in range(num_rows)
        ]
    )

src.dx.datatypes.date_time.generate_time_delta_series(num_rows)

Generate a series of random pd.Timedelta values.

Parameters:

Name Type Description Default
num_rows int

Number of rows to generate

required
Source code in src/dx/datatypes/date_time.py
def generate_time_delta_series(num_rows: int) -> pd.Series:
    """
    Generate a series of random `pd.Timedelta` values.

    Parameters
    ----------
    num_rows: int
        Number of rows to generate
    """
    return pd.Series(
        [pd.Timedelta(f"{np.random.randint(-1000, 1000)} hours") for _ in range(num_rows)]
    )