Skip to content

Fix swapped heavy/light columns in zimmerman2020antibody_4420_kd.csv - #13

Open
thematrixmaster wants to merge 1 commit into
Graylab:mainfrom
thematrixmaster:fix-zimmerman2020-heavy-light-swap
Open

Fix swapped heavy/light columns in zimmerman2020antibody_4420_kd.csv#13
thematrixmaster wants to merge 1 commit into
Graylab:mainfrom
thematrixmaster:fix-zimmerman2020-heavy-light-swap

Conversation

@thematrixmaster

Copy link
Copy Markdown

Summary

In data/binding/zimmerman2020antibody_4420_kd.csv the heavy and light columns appear to be
exchanged: the heavy column holds a kappa light-chain V region and the light column holds the
heavy-chain V region. This PR swaps the two columns' contents so the file matches the
heavy,light convention documented in the README and used by the other datasets.

No sequence, measurement or row was altered — only the two columns' positions. The change was
made by exchanging the first two comma-separated fields of each line, so every other column is
preserved byte-for-byte.

Evidence

All of this is checkable from the file itself plus public references:

  1. ANARCI chain typing, 21/21 rows. abnumber.Chain(seq).chain_type returns K for every
    value in the heavy column and H for every value in the light column.

  2. C-terminal J motifs. Every heavy value ends ...TFGGGTKLEIK (a kappa J gene motif);
    every light value ends ...WGQGTSVTVSS (a heavy J gene motif).

  3. Lengths match PDB 1FLR the other way round. The heavy column is 112 aa and the light
    column 118 aa. In 1FLR (the 4-4-20 Fab) the light chain variable domain is 112 aa and the
    heavy 118 aa.

  4. Cross-check against the other 4-4-20 dataset in FLAb. The heavy column of this file is
    byte-identical to the light column of
    data/expression/adams2017measuring_4420-fluorescein_exp_er.csv, which labels that same
    sequence as the light chain.

How it was found

While converting FLAb for an antibody variant-effect benchmark, we searched GenBank for published
nucleotide sequences matching each dataset's wildtype by exact six-frame translation. The 4-4-20
light-chain cDNA record matched this file's heavy column, which surfaced the swap. A chain-type
check with ANARCI then confirmed it, and across FLAb's other 164 datasets this is the only file
affected.

Reproducing

import pandas as pd
from abnumber import Chain

d = pd.read_csv("data/binding/zimmerman2020antibody_4420_kd.csv")
print({Chain(s, scheme="imgt").chain_type for s in d["heavy"]})  # {'K'}
print({Chain(s, scheme="imgt").chain_type for s in d["light"]})  # {'H'}

Thanks for assembling and maintaining FLAb — it has been very useful to us.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant