INNER CODE UNIT · Python
_each
open2c/bioframe · src/bioframe/extras.py:305
def _each(chrom_group):
chrom = chrom_group.name
seq = fasta_records[chrom]
seq = str(seq[:])
gc = []
for _, bin in chrom_group.iterrows():
s = seq[bin["start"] : bin["end"]]
gc.append(seq_gc(s, mapped_only=mapped_only))
return gc
agg = df.groupby("chrom", sort=False)[["start", "end"]].apply(_each)
out_col = pd.Series(data=np.concatenate(agg.values), index=df.index).rename("GC")
if return_input:
return pd.concat([df, out_col], axis="columns")
else:
return out_col