# Interpreting the released curve arrays

The pinned upstream data card describes these files as actual per-well dose-response data reconstructed from well-level assay data. The train parquet has 7,145 rows for 4,136 distinct Molecule Name values. Its only columns are Molecule Name, SMILES, OCNT_ID, Split, concentration_m, normalized_signal, raw_luci_signal and npoints. It has no assay/channel identifier, replicate label, plate/well identity or fitted Hill slope. Multiple rows can share a compound ID. Therefore this task uses immutable zero-based source row indices as curve identities. Do not assert that row order identifies primary versus PXR-null counter-assay, or that multiple rows are biological replicates. If an assignment is proposed, label it as an inference, give the matching evidence and retain alternatives.

The exported curve_records is a lossless value conversion for the selected rows, not newly measured data. All original parquet bytes are also bound. curve_selection preserves reported primary-fit metadata. curve_counter_metadata contains the available reported null-counter-assay fits for those same IDs; the presence of a fit does not identify a particular unlabeled curve row. Concentration is in molarity. The normalized_signal and raw_luci_signal are distinct source arrays; do not replace them with pEC50 or call them interchangeable. The selection is stratified on reported pEC50 standard error and is not a random population sample or a claim that these compounds are defective.
