Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def cheat_pred(y_pred, n=20):
- minimum, maximum = min(y_pred), max(y_pred)
- new_pred = np.zeros(len(y_pred))
- linsp = np.linspace(min(y_pred), max(y_pred), num=n+1)
- for i in range(n):
- new_pred[np.where((linsp[i] <= y_pred) & (y_pred <= linsp[i + 1]))] = i
- return new_pred
- def new_cheat_pred(y_pred):
- ind = np.argsort(y_pred)
- l = len(y_pred)
- y_new = np.zeros(l)
- otrezki = list(range(0, l, int(l / 20)))
- for i in range(len(otrezki) - 1):
- y_new[ind[otrezki[i]:otrezki[i + 1]]] = i
- return y_new
- def scaled_cheat_pred(y_pred):
- for i in range(len(y_pred)):
- if y_pred[i] > 20:
- y_pred[i] = 20
- elif y_pred[i] < 0:
- y_pred[i] = 0
- return np.around(y_pred)
- def h_cheat_pred(y_pred, h=10):
- len_pred = abs(max(y_pred) - min(y_pred))
- left_bound = min(y_pred)
- right_bound = max(y_pred)
- l = len_pred / 2
- middle = (max(y_pred) - l)
- height = (h * l) / 10
- for i in range(len(y_pred)):
- if y_pred[i] > middle:
- m = y_pred[i] - middle
- y_pred[i] = 10 + ((h * m) / height)
- elif y_pred[i] < middle:
- m = abs(y_pred[i] - middle)
- y_pred[i] = 10 - ((h * m)/ height)
- elif y_pred[i] == middle:
- y_pred[i] = 10
- return np.around(y_pred)
- def voting(lst, mvp=0):
- y_new = np.zeros(len(lst[0]))
- for i in range(len(lst[0])):
- a = np.array([pred[i] for pred in lst])
- if len(np.unique(a)) == 2:
- counts = np.bincount(a)
- y_new[i] = np.argmax(counts)
- else:
- y_new[i] = a[mvp]
- return y_new
- l = len(d[d['y'] == 4])
- bd4 = d[d['y'] == 4]
- bd3 = d[d['y'] == 3].sample(n=l)
- bd2 = d[d['y'] == 2].sample(n=l)
- bd1 = d[d['y'] == 1].sample(n=l)
- bd0 = d[d['y'] == 0].sample(n=l)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement