Acho que fiz certo, unica coisa que não entendi direito foi o critério de escolha de "low" e "high" no random, acabei deixando 0 e 30 pois acabei conferindo outras resoluções depois.
np.random.seed(84)
coef_angulares = np.random.uniform(low=0.00,high=30.00,size=100)
norma2 = np.array([])
for i in range(100):
norma2 = np.append(norma2, np.linalg.norm(y_1-(coef_angulares[i]*x_1+b)))
dados1 = np.column_stack([norma2, coef_angulares])
dados1.shape
indice_menor_norma = np.argmin(dados1[:, 0])
menor_norma = dados1[indice_menor_norma, 0]
melhor_coef = dados1[indice_menor_norma, 1]
print(indice_menor_norma)
print(melhor_coef)
print(menor_norma)