Skip to content

Commit a2f0293

Browse files
committed
fix missing column in output. NA column has to be made even if no bmk
1 parent 0a4d36e commit a2f0293

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

bin/drip.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -331,6 +331,23 @@ def _process_seqid_chunk(seqid, chunk_paths_by_sample, col_prefixes, temp_out_di
331331

332332
for col_prefix, chunk_path in zip(col_prefixes, chunk_paths_by_sample):
333333
if chunk_path is None:
334+
# Crée un DataFrame vide avec les bonnes colonnes de métadonnées et une colonne NA pour ce sample
335+
# On suppose qu'il y a au moins un sample avec données pour récupérer la structure
336+
# On construit une ligne unique avec NA pour les colonnes metrics, et les métadonnées à la valeur du seqid
337+
# Pour chaque BP, on crée une ligne NA
338+
for i in range(len(all_bps)):
339+
# On crée un DataFrame avec une seule ligne, toutes les métadonnées à seqid ou '.' et la colonne metric à NA
340+
meta = {k: seqid if k == 'SeqID' else '.' for k in metadata_cols}
341+
# Une seule ligne
342+
row = {**meta, f'{col_prefix}::espf': np.nan, f'{col_prefix}::espr': np.nan}
343+
bp_data = pd.DataFrame([row])
344+
if bp_accumulators[i] is None:
345+
bp_accumulators[i] = bp_data
346+
else:
347+
bp_accumulators[i] = bp_accumulators[i].merge(
348+
bp_data, on=metadata_cols, how='outer'
349+
)
350+
del bp_data
334351
continue
335352
df = pd.read_csv(chunk_path, sep='\t', dtype=mixed_dtypes_local)
336353
for i in range(len(all_bps)):

0 commit comments

Comments
 (0)