Skip to content

Commit

Permalink
Fix more doctests
Browse files Browse the repository at this point in the history
  • Loading branch information
justin13601 committed Jul 22, 2024
1 parent 69181db commit 81c70ae
Showing 1 changed file with 48 additions and 48 deletions.
96 changes: 48 additions & 48 deletions src/aces/aggregate.py
Original file line number Diff line number Diff line change
Expand Up @@ -147,67 +147,67 @@ def aggregate_temporal_window(
>>> aggregate_temporal_window(df, (
... False, timedelta(days=-1), False, timedelta(days=0))).drop("timestamp")
shape: (6, 7)
┌────────────┬─────────────────────┬─────────────────────┬─────────────────────┬──────┬──────┬──────┐
│ subject_id ┆ timestamp ┆ timestamp_at_start ┆ timestamp_at_end ┆ is_A ┆ is_B ┆ is_C │
│ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- │
│ i64 ┆ datetime[μs] ┆ datetime[μs] ┆ datetime[μs] ┆ i64 ┆ i64 ┆ i64
╞════════════╪═════════════════════╪═════════════════════╪═════════════════════╪══════╪══════╪══════╡
│ 1 ┆ 1989-12-01 12:03:00 ┆ 1989-12-01 12:03:00 ┆ 1989-11-30 12:03:00 ┆ 0 ┆ 0 ┆ 0
│ 1 ┆ 1989-12-02 05:17:00 ┆ 1989-12-02 05:17:00 ┆ 1989-12-01 05:17:00 ┆ 1 ┆ 0 ┆ 1
│ 1 ┆ 1989-12-02 12:03:00 ┆ 1989-12-02 12:03:00 ┆ 1989-12-01 12:03:00 ┆ 0 ┆ 1 ┆ 1 │
│ 1 ┆ 1989-12-06 11:00:00 ┆ 1989-12-06 11:00:00 ┆ 1989-12-05 11:00:00 ┆ 0 ┆ 0 ┆ 0
│ 2 ┆ 1989-12-01 13:14:00 ┆ 1989-12-01 13:14:00 ┆ 1989-11-30 13:14:00 ┆ 0 ┆ 0 ┆ 0
│ 2 ┆ 1989-12-03 15:17:00 ┆ 1989-12-03 15:17:00 ┆ 1989-12-02 15:17:00 ┆ 0 ┆ 0 ┆ 0
└────────────┴─────────────────────┴─────────────────────┴─────────────────────┴──────┴──────┴──────┘
┌────────────┬─────────────────────┬─────────────────────┬──────────────────┬──────────────┐
│ subject_id ┆ timestamp_at_start ┆ timestamp_at_end ┆ is_A ┆ is_B ┆ is_C ┆ _EVENT_INDEX
│ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ ---
│ i64 ┆ datetime[μs] ┆ datetime[μs] ┆ i64 ┆ i64 ┆ i64 ┆ i64
╞════════════╪═════════════════════╪═════════════════════╪══════════════════╪══════════════╡
│ 1 ┆ 1989-12-01 12:03:00 ┆ 1989-11-30 12:03:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
│ 1 ┆ 1989-12-02 05:17:00 ┆ 1989-12-01 05:17:00 ┆ 1 ┆ 0 ┆ 1 ┆ 0
│ 1 ┆ 1989-12-02 12:03:00 ┆ 1989-12-01 12:03:00 ┆ 0 ┆ 1 ┆ 1 ┆ 1
│ 1 ┆ 1989-12-06 11:00:00 ┆ 1989-12-05 11:00:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
│ 2 ┆ 1989-12-01 13:14:00 ┆ 1989-11-30 13:14:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
│ 2 ┆ 1989-12-03 15:17:00 ┆ 1989-12-02 15:17:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
└────────────┴─────────────────────┴─────────────────────┴──────────────────┴──────────────┘
>>> aggregate_temporal_window(df, (
... False, timedelta(hours=12), False, timedelta(hours=12))).drop("timestamp")
shape: (6, 7)
┌────────────┬─────────────────────┬─────────────────────┬─────────────────────┬──────┬──────┬──────┐
│ subject_id ┆ timestamp ┆ timestamp_at_start ┆ timestamp_at_end ┆ is_A ┆ is_B ┆ is_C │
│ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- │
│ i64 ┆ datetime[μs] ┆ datetime[μs] ┆ datetime[μs] ┆ i64 ┆ i64 ┆ i64
╞════════════╪═════════════════════╪═════════════════════╪═════════════════════╪══════╪══════╪══════╡
│ 1 ┆ 1989-12-01 12:03:00 ┆ 1989-12-02 00:03:00 ┆ 1989-12-02 12:03:00 ┆ 0 ┆ 1 ┆ 1 │
│ 1 ┆ 1989-12-02 05:17:00 ┆ 1989-12-02 17:17:00 ┆ 1989-12-03 05:17:00 ┆ 0 ┆ 0 ┆ 0 │
│ 1 ┆ 1989-12-02 12:03:00 ┆ 1989-12-03 00:03:00 ┆ 1989-12-03 12:03:00 ┆ 0 ┆ 0 ┆ 0 │
│ 1 ┆ 1989-12-06 11:00:00 ┆ 1989-12-06 23:00:00 ┆ 1989-12-07 11:00:00 ┆ 0 ┆ 0 ┆ 0 │
│ 2 ┆ 1989-12-01 13:14:00 ┆ 1989-12-02 01:14:00 ┆ 1989-12-02 13:14:00 ┆ 0 ┆ 0 ┆ 0 │
│ 2 ┆ 1989-12-03 15:17:00 ┆ 1989-12-04 03:17:00 ┆ 1989-12-04 15:17:00 ┆ 0 ┆ 0 ┆ 0 │
└────────────┴─────────────────────┴─────────────────────┴─────────────────────┴──────┴──────┴──────┘
┌────────────┬─────────────────────┬─────────────────────┬──────────────────┬──────────────┐
│ subject_id ┆ timestamp_at_start ┆ timestamp_at_end ┆ is_A ┆ is_B ┆ is_C ┆ _EVENT_INDEX
│ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ ---
│ i64 ┆ datetime[μs] ┆ datetime[μs] ┆ i64 ┆ i64 ┆ i64 ┆ i64
╞════════════╪═════════════════════╪═════════════════════╪══════════════════╪══════════════╡
│ 1 ┆ 1989-12-02 00:03:00 ┆ 1989-12-02 12:03:00 ┆ 0 ┆ 1 ┆ 1 ┆ 1
│ 1 ┆ 1989-12-02 17:17:00 ┆ 1989-12-03 05:17:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
│ 1 ┆ 1989-12-03 00:03:00 ┆ 1989-12-03 12:03:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
│ 1 ┆ 1989-12-06 23:00:00 ┆ 1989-12-07 11:00:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
│ 2 ┆ 1989-12-02 01:14:00 ┆ 1989-12-02 13:14:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
│ 2 ┆ 1989-12-04 03:17:00 ┆ 1989-12-04 15:17:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
└────────────┴─────────────────────┴─────────────────────┴──────────────────┴──────────────┘
>>> # Note that left_inclusive and right_inclusive are relative to the temporal ordering of the window
>>> # and not the timestamp of the row. E.g., if left_inclusive is False, the window will not include
>>> # the earliest event in the aggregation window, regardless of whether that is earlier than the
>>> # timestamp of the row.
>>> aggregate_temporal_window(df, (
... False, timedelta(days=-1), True, timedelta(days=1))).drop("timestamp")
shape: (6, 7)
┌────────────┬─────────────────────┬─────────────────────┬─────────────────────┬──────┬──────┬──────┐
│ subject_id ┆ timestamp ┆ timestamp_at_start ┆ timestamp_at_end ┆ is_A ┆ is_B ┆ is_C │
│ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- │
│ i64 ┆ datetime[μs] ┆ datetime[μs] ┆ datetime[μs] ┆ i64 ┆ i64 ┆ i64
╞════════════╪═════════════════════╪═════════════════════╪═════════════════════╪══════╪══════╪══════╡
│ 1 ┆ 1989-12-01 12:03:00 ┆ 1989-12-02 12:03:00 ┆ 1989-12-01 12:03:00 ┆ 1 ┆ 1 ┆ 1
│ 1 ┆ 1989-12-02 05:17:00 ┆ 1989-12-03 05:17:00 ┆ 1989-12-02 05:17:00 ┆ 1 ┆ 0 ┆ 0 │
│ 1 ┆ 1989-12-02 12:03:00 ┆ 1989-12-03 12:03:00 ┆ 1989-12-02 12:03:00 ┆ 0 ┆ 0 ┆ 0
│ 1 ┆ 1989-12-06 11:00:00 ┆ 1989-12-07 11:00:00 ┆ 1989-12-06 11:00:00 ┆ 0 ┆ 0 ┆ 0
│ 2 ┆ 1989-12-01 13:14:00 ┆ 1989-12-02 13:14:00 ┆ 1989-12-01 13:14:00 ┆ 0 ┆ 0 ┆ 0
│ 2 ┆ 1989-12-03 15:17:00 ┆ 1989-12-04 15:17:00 ┆ 1989-12-03 15:17:00 ┆ 0 ┆ 0 ┆ 0
└────────────┴─────────────────────┴─────────────────────┴─────────────────────┴──────┴──────┴──────┘
┌────────────┬─────────────────────┬─────────────────────┬──────────────────┬──────────────┐
│ subject_id ┆ timestamp_at_start ┆ timestamp_at_end ┆ is_A ┆ is_B ┆ is_C ┆ _EVENT_INDEX
│ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ ---
│ i64 ┆ datetime[μs] ┆ datetime[μs] ┆ i64 ┆ i64 ┆ i64 ┆ i64
╞════════════╪═════════════════════╪═════════════════════╪══════════════════╪══════════════╡
│ 1 ┆ 1989-12-02 12:03:00 ┆ 1989-12-01 12:03:00 ┆ 1 ┆ 1 ┆ 1 ┆ 2
│ 1 ┆ 1989-12-03 05:17:00 ┆ 1989-12-02 05:17:00 ┆ 1 ┆ 0 ┆ 0 ┆ 2
│ 1 ┆ 1989-12-03 12:03:00 ┆ 1989-12-02 12:03:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
│ 1 ┆ 1989-12-07 11:00:00 ┆ 1989-12-06 11:00:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
│ 2 ┆ 1989-12-02 13:14:00 ┆ 1989-12-01 13:14:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
│ 2 ┆ 1989-12-04 15:17:00 ┆ 1989-12-03 15:17:00 ┆ 0 ┆ 0 ┆ 0 ┆ null
└────────────┴─────────────────────┴─────────────────────┴──────────────────┴──────────────┘
>>> aggregate_temporal_window(df, (
... True, timedelta(days=-1), False, timedelta(days=1))).drop("timestamp")
shape: (6, 7)
┌────────────┬─────────────────────┬─────────────────────┬─────────────────────┬──────┬──────┬──────┐
│ subject_id ┆ timestamp ┆ timestamp_at_start ┆ timestamp_at_end ┆ is_A ┆ is_B ┆ is_C │
│ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- │
│ i64 ┆ datetime[μs] ┆ datetime[μs] ┆ datetime[μs] ┆ i64 ┆ i64 ┆ i64
╞════════════╪═════════════════════╪═════════════════════╪═════════════════════╪══════╪══════╪══════╡
│ 1 ┆ 1989-12-01 12:03:00 ┆ 1989-12-02 12:03:00 ┆ 1989-12-01 12:03:00 ┆ 1 ┆ 1 ┆ 2 │
│ 1 ┆ 1989-12-02 05:17:00 ┆ 1989-12-03 05:17:00 ┆ 1989-12-02 05:17:00 ┆ 1 ┆ 1 ┆ 1
│ 1 ┆ 1989-12-02 12:03:00 ┆ 1989-12-03 12:03:00 ┆ 1989-12-02 12:03:00 ┆ 1 ┆ 0 ┆ 0 │
│ 1 ┆ 1989-12-06 11:00:00 ┆ 1989-12-07 11:00:00 ┆ 1989-12-06 11:00:00 ┆ 0 ┆ 1 ┆ 0 │
│ 2 ┆ 1989-12-01 13:14:00 ┆ 1989-12-02 13:14:00 ┆ 1989-12-01 13:14:00 ┆ 0 ┆ 1 ┆ 1 │
│ 2 ┆ 1989-12-03 15:17:00 ┆ 1989-12-04 15:17:00 ┆ 1989-12-03 15:17:00 ┆ 0 ┆ 0 ┆ 0
└────────────┴─────────────────────┴─────────────────────┴─────────────────────┴──────┴──────┴──────┘
┌────────────┬─────────────────────┬─────────────────────┬──────────────────┬──────────────┐
│ subject_id ┆ timestamp_at_start ┆ timestamp_at_end ┆ is_A ┆ is_B ┆ is_C ┆ _EVENT_INDEX
│ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ ---
│ i64 ┆ datetime[μs] ┆ datetime[μs] ┆ i64 ┆ i64 ┆ i64 ┆ i64
╞════════════╪═════════════════════╪═════════════════════╪══════════════════╪══════════════╡
│ 1 ┆ 1989-12-02 12:03:00 ┆ 1989-12-01 12:03:00 ┆ 1 ┆ 1 ┆ 2 ┆ 1
│ 1 ┆ 1989-12-03 05:17:00 ┆ 1989-12-02 05:17:00 ┆ 1 ┆ 1 ┆ 1 ┆ 2
│ 1 ┆ 1989-12-03 12:03:00 ┆ 1989-12-02 12:03:00 ┆ 1 ┆ 0 ┆ 0 ┆ 2
│ 1 ┆ 1989-12-07 11:00:00 ┆ 1989-12-06 11:00:00 ┆ 0 ┆ 1 ┆ 0 ┆ 3
│ 2 ┆ 1989-12-02 13:14:00 ┆ 1989-12-01 13:14:00 ┆ 0 ┆ 1 ┆ 1 ┆ 0
│ 2 ┆ 1989-12-04 15:17:00 ┆ 1989-12-03 15:17:00 ┆ 0 ┆ 0 ┆ 0 ┆ 1
└────────────┴─────────────────────┴─────────────────────┴──────────────────┴──────────────┘
"""
if not isinstance(endpoint_expr, TemporalWindowBounds):
endpoint_expr = TemporalWindowBounds(*endpoint_expr)
Expand Down

0 comments on commit 81c70ae

Please sign in to comment.