我使用 patsy 来构建设计矩阵。我需要包括原始因素的力量。例如,使用回归,我希望能够写
patsy.dmatrix('y~x1 + x1**2 + x2 + x2**2 + x2**3', data)
其中 data 是包含列 y、x1、x2 的数据框。但它似乎根本不起作用。有什么解决办法吗?
Patsy 对它继承自 R 有一个特殊的解释**
。我考虑过让它在应用于数字因子时自动做正确的事情,但实际上并没有实现它......同时,有一个通用的方法来告诉patsy 切换到使用 Python 对运算符的解释,而不是 Patsy 解释:你将表达式包装在I(...)
. 所以:
patsy.dmatrix('y~x1 + I(x1**2) + x2 + I(x2**2) + I(x2**3)', data)
Patsy 似乎没有管理权力表示(还没有?)。可以在这里找到一种解决方法:python stats models - 回归中的二次项