def __init__(self,nr_examples=100,g1 = [[-5,-5],1], g2 = [[5,5],1],balance=0.5,split=[0.8,0,0.2]):
        nr_positive = nr_examples*balance # number of examples of "positive" class
        nr_negative = nr_positive - nr_examples # number of examples of "negative" class
        self.mean1 = g1[0] # mean of positive class
        self.mean2 = g2[0] # mean of negative class
        self.variance1 = g1[1] # 
        self.variance2 = g2[1]
        self.balance = balance
        self.nr_points = nr_examples
        X_pos_1 = np.random.normal(g1[0][0],g1[1],[nr_positive,1])
        X_pos_2 = np.random.normal(g1[0][1],g1[1],[nr_positive,1])
        X_pos = np.hstack([X_pos_1,X_pos_2])
        X_neg_1 = np.random.normal(g2[0][0],g2[1],[nr_negative,1])
        X_neg_2 = np.random.normal(g2[0][1],g2[1],[nr_negative,1])
        X_neg = np.hstack([X_neg_1,X_neg_2])
        y_pos = np.zeros([nr_positive,1],dtype=np.int)
        y_neg = np.ones([nr_negative,1],dtype=np.int)
        X = np.vstack([X_pos, X_neg])
        y = np.vstack([y_pos, y_neg])

                      
        perm = np.random.permutation(nr_examples)
        self.split = split
        self.X = X[perm,:]
        self.y = y[perm]
        train_y,dev_y,test_y,train_X,dev_X,test_X = split_train_dev_test(self.X,self.y,split[0],split[1],split[2])
        self.train_X = train_X
        self.train_y = train_y
        self.dev_X = dev_X
        self.dev_y = dev_y
        self.test_X = test_X
        self.test_y = test_y
dataset/ETHPy150Open alvations/pywsd/merlin/simple_data_set.py/SimpleDataSet.__init__/swapped operands of `-`