Skip to main content
Version: 1.7.0

datetime

def datetime(
time_unit: TimeUnit | Collection[TimeUnit] | None = None,
time_zone: str | timezone | Collection[str | timezone | None] | None = ('*', None),
) -> SelectorProxy

Categories: projection

Select all columns of datetime data type.

Parameters: time_unit: One or more of the supported time precision units: "ms", "us", or "ns". If omitted, selects datetime columns with any time unit. time_zone: Specifies which time zone(s) to match:

  • Pass one or more valid time zone strings (as defined by the zoneinfo module). To list all available zones, use import zoneinfo; zoneinfo.available_timezones().
  • Use None to select datetime columns with no time zone.
  • Use "*" to match any column with any time zone.

Examples

>>> import tabsdata.tableframe as td_tf
>>> from datetime import datetime, timedelta, timezone
>>>
>>> tf = td_tf.TableFrame({
... "TimestampUTC": [
... datetime(2024, 1, 1, 9, 0, tzinfo=timezone.utc),
... datetime(2024, 1, 2, 10, 0, tzinfo=timezone.utc),
... datetime(2024, 1, 3, 11, 0, tzinfo=timezone.utc),
... datetime(2024, 1, 4, 12, 0, tzinfo=timezone.utc),
... datetime(2024, 1, 5, 13, 0, tzinfo=timezone.utc),
... datetime(2024, 1, 6, 14, 0, tzinfo=timezone.utc),
... datetime(2024, 1, 7, 15, 0, tzinfo=timezone.utc),
... datetime(2024, 1, 8, 16, 0, tzinfo=timezone.utc),
... ],
... "Event": ["A", "B", "C", "D", "E", "F", "G", "H"],
... "TimestampLocal": [
... datetime(2024, 1, 1, 10, 0, tzinfo=timezone(timedelta(hours=1))),
... datetime(2024, 1, 2, 11, 0, tzinfo=timezone(timedelta(hours=1))),
... datetime(2024, 1, 3, 12, 0, tzinfo=timezone(timedelta(hours=1))),
... datetime(2024, 1, 4, 13, 0, tzinfo=timezone(timedelta(hours=1))),
... datetime(2024, 1, 5, 14, 0, tzinfo=timezone(timedelta(hours=1))),
... datetime(2024, 1, 6, 15, 0, tzinfo=timezone(timedelta(hours=1))),
... datetime(2024, 1, 7, 16, 0, tzinfo=timezone(timedelta(hours=1))),
... datetime(2024, 1, 8, 17, 0, tzinfo=timezone(timedelta(hours=1))),
... ]
... })

Original: ┌───────────────────────────┬───────┬───────────────────────────┐ │ TimestampUTC ┆ Event ┆ TimestampLocal │ │ --- ┆ --- ┆ --- │ │ datetime[μs, UTC] ┆ str ┆ datetime[μs, +01:00] │ ╞═══════════════════════════╪═══════╪═══════════════════════════╡ │ 2024-01-01 09:00:00+00:00 ┆ "A" ┆ 2024-01-01 10:00:00+01:00 │ │ 2024-01-02 10:00:00+00:00 ┆ "B" ┆ 2024-01-02 11:00:00+01:00 │ │ 2024-01-03 11:00:00+00:00 ┆ "C" ┆ 2024-01-03 12:00:00+01:00 │ │ 2024-01-04 12:00:00+00:00 ┆ "D" ┆ 2024-01-04 13:00:00+01:00 │ │ 2024-01-05 13:00:00+00:00 ┆ "E" ┆ 2024-01-05 14:00:00+01:00 │ │ 2024-01-06 14:00:00+00:00 ┆ "F" ┆ 2024-01-06 15:00:00+01:00 │ │ 2024-01-07 15:00:00+00:00 ┆ "G" ┆ 2024-01-07 16:00:00+01:00 │ │ 2024-01-08 16:00:00+00:00 ┆ "H" ┆ 2024-01-08 17:00:00+01:00 │ └───────────────────────────┴───────┴───────────────────────────┘

>>> tf.select(td_tf.selectors.datetime(time_zone="UTC"))

Selected: ┌───────────────────────────┐ │ TimestampUTC │ │ --- │ │ datetime[μs, UTC] │ ╞═══════════════════════════╡ │ 2024-01-01 09:00:00+00:00 │ │ 2024-01-02 10:00:00+00:00 │ │ 2024-01-03 11:00:00+00:00 │ │ 2024-01-04 12:00:00+00:00 │ │ 2024-01-05 13:00:00+00:00 │ │ 2024-01-06 14:00:00+00:00 │ │ 2024-01-07 15:00:00+00:00 │ │ 2024-01-08 16:00:00+00:00 │ └───────────────────────────┘