Source code for rnaglib.transforms.annotate.names

from rnaglib.transforms import Transform


[docs] class PDBIDNameTransform(Transform): """Assign the RNA name using its PDBID""" def forward(self, data: dict) -> dict: g = data["rna"] g.name = g.graph["pdbid"].lower() return data
''' class ChainNameTransform(Transform): """Set the rna.name field using the pdbid and chain ID. Use when the given RNA consists of a single chain.""" def forward(self, rna_dict: dict) -> dict: g = rna_dict["rna"] nid, ndata = next(iter(g.nodes(data=True))) g.name = g.graph["pdbid"][0].lower() + "_" + ndata["chain_name"] # .upper() return rna_dict pass '''
[docs] class ChainNameTransform(Transform): """Set the rna.name field using the pdbid and chain ID. Use when the given RNA consists of a single chain.""" def forward(self, rna_dict: dict) -> dict: g = rna_dict["rna"] # Access graph attributes directly pdbid = g.graph["pdbid"].lower() # Get the first node's chain name directly from the node data first_node_id = list(g.nodes)[0] # Get first node ID chain_name = first_node_id.split(".")[1] # .upper() # Construct name directly g.name = f"{pdbid}_{chain_name}" return rna_dict