INNER CODE UNIT · Python
_read_seq_table
antigenomics/vdjtools · python/vdjtools/cli/__init__.py:103
def _read_seq_table(path: Path, column: Optional[str], no_header: bool) -> tuple[pl.DataFrame, str]:
"""Read a sequence table; return (frame, sequence-column-name). Tab-separated, strings only."""
if no_header:
df = pl.read_csv(path, separator="\t", has_header=False, infer_schema_length=0)
return df, df.columns[0]
df = pl.read_csv(path, separator="\t", infer_schema_length=0)
if column:
if column not in df.columns:
_err(f"column {column!r} not found; columns: {df.columns}")
return df, column
low = {c.lower(): c for c in df.columns}
col = next((low[c] for c in _SEQ_COLS if c in low), df.columns[0])
return df, col
def _sample_items(samples, metadata, base_dir, sample_col, file_template) -> list:
"""[(sample_id, path), ...] — from a metadata table if given, else positional files.