sklearn.preprocessing.PolynomialFeatures的簡單使用
阿新 • • 發佈:2018-12-12
class sklearn.preprocessing.
PolynomialFeatures
(degree=2, interaction_only=False, include_bias=True):此類使用來生成交叉特徵的,並且多項式包含的是相互影響的特徵集。解釋一下其中幾個引數:
- degree:預設情況下,該多項式為2次。譬如形式為二維的[a,b],那麼其二次多項式的特徵為[1, a, b, a^2, ab, b^2]
- interraction_only:boolean,預設為False。如果為true,則會產生相互影響的特徵集
- include_bias:bollean,是否包含偏差列
以下給出官方文件的例子:
>>> X = np.arange(6).reshape(3, 2) >>> X array([[0, 1], [2, 3], [4, 5]]) >>> poly = PolynomialFeatures(2) >>> poly.fit_transform(X) array([[ 1., 0., 1., 0., 0., 1.], [ 1., 2., 3., 4., 6., 9.], [ 1., 4., 5., 16., 20., 25.]]) >>> poly = PolynomialFeatures(interaction_only=True) >>> poly.fit_transform(X) array([[ 1., 0., 1., 0.], [ 1., 2., 3., 6.], [ 1., 4., 5., 20.]])
有幾個點需要注意一下:
- 在使用PolynomialFeatures的時候,注意之前要匯入類:import sklearn.preprocessing
- 上面的程式碼列出了interaction_only=True/Fasle的區別。以[a,b]舉例,即最終結果包不包括ab這種互動式的值。