#!/bin/bash
set -euo pipefail

OUTDIR="/BRC/yan/heart/count_snATAC"

echo "[$(date)] Merging into count matrix..."

files=($(ls ${OUTDIR}/counts_snPeak_Adule_* | sort))

# build header
header="chr\tstart\tend"
for f in "${files[@]}"; do
    sample=$(basename ${f} | sed 's/^counts_snPeak_//')
    header="${header}\t${sample}"
done

# write header + data
{ echo -e "${header}";
  paste "${files[@]}" \
    | awk 'BEGIN{OFS="\t"} {
        printf $1"\t"$2"\t"$3;
        for(i=4; i<=NF; i+=4) printf "\t"$i;
        print ""
    }';
} > ${OUTDIR}/count_matrix_snPeak.txt

echo "  → $(wc -l < ${OUTDIR}/count_matrix_snPeak.txt) lines (incl. header)  →  ${OUTDIR}/count_matrix_snPeak.txt"
echo "[$(date)] Done."
