def __init__(self, edge_val=None, edge_exclude=None, nNodeTotal=None, TrueParams=None,  **kwargs):
    edge_val = np.asarray(np.squeeze(edge_val), dtype=np.int16)
    self.nNodeTotal = int(nNodeTotal)
    self.nEdgeTotal = nNodeTotal * (nNodeTotal - 1) / 2
    self.nPosEdges = len(edge_val)
    self.nAbsEdges = self.nEdgeTotal - self.nPosEdges
    self.graphType = 'undirected'

    # If there are edges that need to be heldout, concatenate edge_id and edge_weights
    if edge_exclude is not None:
        self.nExcludeEdges = len(edge_exclude)
        ind0 = np.nonzero(edge_exclude[:,2]==0)
        ind1 = np.nonzero(edge_exclude[:,2]==1)
        edge_exclude[ind0,2] = -1 # excluded edge values originally 0 set to -1
        edge_exclude[ind1,2] = -2 # excluded edge values originally 1 set to -2
        edge_val_test = np.concatenate((edge_val, edge_exclude), axis=0)
        self.edge_val = edge_val_test
    else:
        self.edge_val = edge_val

    # Save "true" parameters that generated toy-data, if provided
    if TrueParams is not None:
      self.TrueParams = TrueParams

    # Create a sparse matrix for these edges to use in analysis (algorithm depends on this)
    self.sparseY = self.to_sparse_matrix()

  ######################################################### Create Toy Data
Constructor for WordsData object
dataset/ETHPy150Open daeilkim/refinery/refinery/bnpy/bnpy-dev/bnpy/data/GraphData.py/GraphData.__init__