code: def read_network_file(self, path_to_network_file):
          
          network_df = pd.read_table(path_to_network_file)
          network_edges = {}
          for _, row in network_df.iterrows():
              vertex0_id = self.add_pathway(row["pw0"])
              vertex1_id = self.add_pathway(row["pw1"])
              edge_id = self.edge_tuple(vertex0_id, vertex1_id)
              if "features" in row:
                  network_edges[edge_id] = \
                    [int(float(f)) for f in row["features"].split(" ")]
              else:
                  network_edges[edge_id] = []
          self._augment_network(network_edges)
docs: Parameters
          -----------
          path_to_network_file : str
            Expects a network file with columns "pw0" and "pw1." A "features"
            column that specifies the features where the (pw0, pw1) edge is
            present will assign a weight to the edge, though it is not required
            (edge will have weight 1 if no "features" column exists).
                "features" format: space-separated feature numbers,
                e.g. 0.0 1.0 2.0