Data Preparation¶
Functions for preparing Daily and Sample DataFrames: computing derived columns (DecYear, Julian, LogQ, seasonal harmonics) and validating input formats.
wrtds.data_prep
¶
DataFrame validation, column computation, and utilities for WRTDS.
decimal_date(dates)
¶
Convert datetime Series to decimal year.
Formula matches R's EGRET::decimalDate: year + (date - Jan1) / (Jan1_next_year - Jan1)
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
dates
|
Series
|
Series of datetime-like values. |
required |
Returns:
| Type | Description |
|---|---|
Series
|
Series of float decimal years. |
Source code in wrtds/data_prep.py
populate_daily(daily)
¶
Validate required columns and compute derived columns for daily discharge data.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
daily
|
DataFrame
|
DataFrame with at least columns |
required |
Returns:
| Type | Description |
|---|---|
DataFrame
|
DataFrame sorted by Date with added columns: |
DataFrame
|
LogQ, Julian, DecYear, Month, Day, MonthSeq. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If required columns are missing or Q contains non-positive values. |
Source code in wrtds/data_prep.py
populate_sample(sample, daily)
¶
Validate, compute derived columns, and merge Q from daily.
Accepts either ConcLow/ConcHigh columns or Conc/Remark
columns (auto-converted via :func:compress_data).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
sample
|
DataFrame
|
Water quality sample DataFrame. |
required |
daily
|
DataFrame
|
Daily discharge DataFrame (must already be populated via
:func: |
required |
Returns:
| Type | Description |
|---|---|
DataFrame
|
DataFrame sorted by Date with added columns: |
DataFrame
|
Uncen, ConcAve, Julian, DecYear, Month, Day, MonthSeq, |
DataFrame
|
SinDY, CosDY, Q, LogQ. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If required columns are missing. |
Source code in wrtds/data_prep.py
compress_data(sample)
¶
Convert Conc + Remark format to ConcLow/ConcHigh.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
sample
|
DataFrame
|
DataFrame with |
required |
Returns:
| Type | Description |
|---|---|
DataFrame
|
DataFrame with |
Raises:
| Type | Description |
|---|---|
ValueError
|
If required columns are missing. |