InSilicoControl / test_streamlit_bed.py
Halper-Stromberg
Support loading MANE transcripts in igv.js, add toggles for CDS/intron/off-target variants, and add MANE transcripts download
710b399
Raw
History Blame Contribute Delete
788 Bytes
import pandas as pd
import io
bed_path = "xgen_cnv_backbone_panel_probes.hg38.bed"
with open(bed_path, "rb") as f:
content = f.read().decode("utf-8", errors="ignore")
lines = [line for line in content.splitlines() if line.strip() and not line.startswith("#") and not line.startswith("track")]
print(f"Total lines: {len(lines)}")
if lines:
df = pd.read_csv(io.StringIO("\n".join(lines)), sep="\t", header=None)
print("Columns:", df.columns)
print(df.head())
cols = ["chrom", "start", "end"]
if len(df.columns) > 3:
cols += [f"col_{i}" for i in range(3, len(df.columns))]
df.columns = cols[:len(df.columns)]
df.insert(0, "Select", True)
print("Processed Columns:", df.columns)
print(df.head())
else:
print("No lines found!")