Python package for manipulating 2-dimensional tabular data structures with emphasis on speed and big data support
—
Date and time manipulation functions for temporal data analysis and time series operations.
def time.year(x):
"""Extract year component from datetime"""
def time.month(x):
"""Extract month component from datetime"""
def time.day(x):
"""Extract day component from datetime"""
def time.hour(x):
"""Extract hour component from datetime"""
def time.minute(x):
"""Extract minute component from datetime"""
def time.second(x):
"""Extract second component from datetime"""
def time.nanosecond(x):
"""Extract nanosecond component from datetime"""
def time.day_of_week(x):
"""Extract day of week (0=Monday, 6=Sunday)"""def time.ymd(year, month, day):
"""
Create date from year, month, day components.
Parameters:
- year: Year values
- month: Month values (1-12)
- day: Day values (1-31)
Returns:
Date column
"""
def time.ymdt(year, month, day, hour=0, minute=0, second=0):
"""
Create datetime from components.
Parameters:
- year: Year values
- month: Month values (1-12)
- day: Day values (1-31)
- hour: Hour values (0-23, default 0)
- minute: Minute values (0-59, default 0)
- second: Second values (0-59, default 0)
Returns:
Datetime column
"""import datatable as dt
# Create datetime data
DT = dt.Frame({
'datetime_str': ['2023-01-15 14:30:45', '2023-06-22 09:15:30', '2023-12-31 23:59:59']
})
# Convert to datetime and extract components
result = DT[:, dt.update(
datetime_val=dt.as_type(f.datetime_str, dt.time64),
year=dt.time.year(dt.as_type(f.datetime_str, dt.time64)),
month=dt.time.month(dt.as_type(f.datetime_str, dt.time64)),
day=dt.time.day(dt.as_type(f.datetime_str, dt.time64)),
hour=dt.time.hour(dt.as_type(f.datetime_str, dt.time64)),
minute=dt.time.minute(dt.as_type(f.datetime_str, dt.time64)),
day_of_week=dt.time.day_of_week(dt.as_type(f.datetime_str, dt.time64))
)]
# Construct dates from components
dates = dt.Frame({
'year': [2023, 2023, 2023],
'month': [1, 6, 12],
'day': [15, 22, 31]
})
dates_result = dates[:, dt.update(
date_val=dt.time.ymd(f.year, f.month, f.day),
datetime_val=dt.time.ymdt(f.year, f.month, f.day, 12, 0, 0)
)]Install with Tessl CLI
npx tessl i tessl/pypi-datatable