Conversion Helpers
convert_dtc_to_dt
admiralpy.convert_dtc.convert_dtc_to_dt(dtc, highest_imputation='n', date_imputation='first')
Convert an ISO 8601 character date (DTC) to a :class:datetime.date.
This is a vectorised computation function — it can be applied element-wise
inside :func:pandas.DataFrame.assign / mutate()-style calls or passed
as a scalar.
Mirrors convert_dtc_to_dt() from the admiral R package.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
dtc
|
str or Series
|
ISO 8601 character date string(s), e.g. |
required |
highest_imputation
|
str
|
Highest imputation level. Same semantics as
:func: |
'n'
|
date_imputation
|
str
|
Imputation strategy for missing date components ( |
'first'
|
Returns:
| Type | Description |
|---|---|
datetime.date or None, or pd.Series
|
Converted date(s). |
Examples:
>>> from admiralpy import convert_dtc_to_dt
>>> convert_dtc_to_dt("2019-07-18")
datetime.date(2019, 7, 18)
>>> convert_dtc_to_dt("2019-07-18T15:25:40")
datetime.date(2019, 7, 18)
>>> import pandas as pd
>>> s = pd.Series(["2019-07-18", "2020-01-01", ""])
>>> convert_dtc_to_dt(s)
0 2019-07-18
1 2020-01-01
2 NaT
dtype: datetime64[ns]
Source code in admiralpy/convert_dtc.py
convert_dtc_to_dtm
admiralpy.convert_dtc.convert_dtc_to_dtm(dtc, highest_imputation='n', date_imputation='first', time_imputation='first')
Convert an ISO 8601 character datetime (DTC) to a :class:datetime.datetime.
Mirrors convert_dtc_to_dtm() from the admiral R package.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
dtc
|
str or Series
|
ISO 8601 datetime string(s). |
required |
highest_imputation
|
str
|
Highest date imputation level (default |
'n'
|
date_imputation
|
str
|
Date imputation strategy (default |
'first'
|
time_imputation
|
str
|
Time imputation strategy ( |
'first'
|
Returns:
| Type | Description |
|---|---|
datetime.datetime or None, or pd.Series
|
Converted datetime(s). |
Examples:
>>> from admiralpy import convert_dtc_to_dtm
>>> convert_dtc_to_dtm("2019-07-18T15:25:40")
datetime.datetime(2019, 7, 18, 15, 25, 40)
>>> convert_dtc_to_dtm("2019-07-18", highest_imputation="D",
... time_imputation="last")
datetime.datetime(2019, 7, 18, 23, 59, 59)