Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

`petab1to2`: random column name for pre-existing `experimentId` column

Ouverte Adaptée aux débutants
#568 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
82/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
python
Domaine
data

Piste de recherche

Le renommage a lieu dans petab/v2/petab1to2.py ; commence par lire la gestion des conflits entre colonnes à cet endroit et les tests de conversion. Reproduis le problème avec le problème Brannmark_JBC2010 et compare les en-têtes de sortie d’une exécution à l’autre. La tâche est terminée lorsque les conversions répétées produisent un nom stable et significatif pour la colonne v1 et avertissent du renommage.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

If a v1 measurement table has an extra column experimentId, petab1to2 renames it to experiment_id_<uuid4> to make room for the v2 experimentId column (petab/v2/petab1to2.py). The output differs between conversions of the same problem, and the new column name carries no meaning.

import tempfile
from pathlib import Path

import benchmark_models_petab as bmp
from petab.v2.petab1to2 import petab1to2

yaml_v1 = bmp.get_problem_yaml_path("Brannmark_JBC2010")
for _ in range(2):
    with tempfile.TemporaryDirectory() as outdir:
        petab1to2(yaml_v1, outdir)
        header = Path(outdir, "measurements.tsv").read_text().split("\n")[0]
        print(header.split("\t"))
['experimentId', 'observableId', 'measurement', 'time', 'observableParameters', 'noiseParameters', 'experiment_id_fda2a0d7-e3d5-462c-a8db-544d13aff6e3', 'independentVariableId', 'datasetId']
['experimentId', 'observableId', 'measurement', 'time', 'observableParameters', 'noiseParameters', 'experiment_id_28c488f0-1acf-493b-bea4-d58f3eef7b19', 'independentVariableId', 'datasetId']

This affects Brannmark_JBC2010 and Isensee_JCB2018 in the benchmark collection, where experimentId groups measurements across simulation conditions (e.g., dose_response, one_step_time_response). Committing converted problems produces spurious diffs on every re-conversion.

Suggested fix: use a fixed name, e.g. experimentId_v1 (appending a counter only if that name is taken as well), and emit a warning about the rename.

🤖 Generated by an AI agent (Claude Code)

Langage dominant
Python
Étoiles
18
Forks
9
Merge moyen
1 j 8 h
PR mergées (30 j)
21

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de PEtab-dev/libpetab-python

Toutes les issues de PEtab-dev/libpetab-python

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.