Lead Derivation
Pure numpy — no scipy required. Validates sample rate and length match.
-
ecgdatakit.processing.derive_lead_iii(lead_i, lead_ii, *, fs=None)[source]
Derive Lead III from Leads I and II (Einthoven’s law: III = II - I).
- Parameters:
-
- Return type:
Lead
-
ecgdatakit.processing.derive_augmented(lead_i, lead_ii, *, fs=None)[source]
Derive augmented limb leads aVR, aVL, aVF from Leads I and II.
- Parameters:
-
- Returns:
[aVR, aVL, aVF] in that order.
- Return type:
list[Lead]
-
ecgdatakit.processing.derive_standard_12(lead_i, lead_ii, v1, v2, v3, v4, v5, v6, *, fs=None)[source]
Assemble a full 12-lead ECG, deriving III, aVR, aVL, aVF.
- Parameters:
lead_i (Lead | ndarray[tuple[Any, ...], dtype[double]]) – Limb leads I and II.
lead_ii (Lead | ndarray[tuple[Any, ...], dtype[double]]) – Limb leads I and II.
v1..v6 (Lead | NDArray[np.float64]) – Precordial leads.
fs (int | None) – Sample rate in Hz. Required when passing numpy arrays.
v1 (Lead | ndarray[tuple[Any, ...], dtype[float64]])
v2 (Lead | ndarray[tuple[Any, ...], dtype[float64]])
v3 (Lead | ndarray[tuple[Any, ...], dtype[float64]])
v4 (Lead | ndarray[tuple[Any, ...], dtype[float64]])
v5 (Lead | ndarray[tuple[Any, ...], dtype[float64]])
v6 (Lead | ndarray[tuple[Any, ...], dtype[float64]])
- Returns:
12 leads in standard order: I, II, III, aVR, aVL, aVF, V1–V6.
- Return type:
list[Lead]
-
ecgdatakit.processing.find_lead(leads, label)[source]
Find a lead by label (case-insensitive).
- Parameters:
leads (list[Lead]) – List of leads to search.
label (str) – Lead label to find (e.g., “II”, “avl”, “V1”).
- Return type:
Lead | None