diff --git a/mhcflurry/train_allele_specific_models_command.py b/mhcflurry/train_allele_specific_models_command.py
index adee815071b987b4212cabafbdfbacaf75ad5843..b5eca928ebc813f85668aff330a43325ce3b91ce 100644
--- a/mhcflurry/train_allele_specific_models_command.py
+++ b/mhcflurry/train_allele_specific_models_command.py
@@ -414,6 +414,7 @@ def train_model(
 
 
 def subselect_df_held_out(df, recriprocal_held_out_fraction=10, seed=0):
+    df = df.copy()
     df["allele_peptide"] = df.allele + "_" + df.peptide
 
     kf = StratifiedKFold(