Используя patsy, я понимаю, как включать и выключать перехваты. Но мне не удалось получить горизонтальные смещения. Например, я хотел бы быть в состоянии соответствовать, в сущности,
y = alpha + beta * abs(x_opt - x_obs)
с x_opt бесплатно в посадке. Я пытался написать это так:
y ~ 1 + np.abs(y - x)
используя постоянный столбец для y. Но в скобках np.abs() patsy «выключается», а y - x просто интерпретируется как число. Если я сменю y на 1 или 20, я получу разные ответы.
Аналогичный вопрос применим, например, к np.pow(1-x, 2) или синусоиде. Возможность соответствовать смещению x была бы чрезвычайно полезной. Это возможно? Или это именно то, что означает, что patsy не делает нелинейные?