Вы можете использовать
def pwf(x):
return (x < 0).astype(float)
или, для решения, которое будет работать с числами, отличными от 0 и 1,
def pwf(x):
return np.array([1,0])[(x < 0).astype(int)]
Общее решение для такого рода проблем будет для векторизации функции:
import matplotlib.pyplot as plt
import numpy as np
def pwf(x):
return 0 if x < 0 else 1
x = np.linspace(-1, 1, 100)
plt.plot(x, np.vectorize(pwf)(x))
plt.show()