python中如何产生交互项?

  统计/机器学习 监督式学习 数据预处理 特征选择 Python    浏览次数: 99
0

比如我想对两个特征x1和x2做交互项,在python里有什么方法吗?

在R里的话,可以直接用

y ~ x1 + x2 + x1:x2

python里如果是sklearn模型的话,怎么能够得到两个特征的交互项呢?

 

wlk1993   2018-10-20 13:27



   2个回答 
2

sklearn里的PolynomialFeatures可以基本实现这个功能

from sklearn.preprocessing import PolynomialFeatures
# 新建一个dataframe
X = pd.DataFrame()
X['x1'] = [1, 1, 1, 2, 0, 0]
X['x2'] = [3, 2, 1, 3, 2, 1]

下面构造交互项

interaction = PolynomialFeatures(2, interaction_only=True, include_bias=False)
X_transformed = interaction.fit_transform(X)

得到的X_transformed就有三列,第三列是x1和x2的乘积

array([[ 1.,  3.,  3.],
       [ 1.,  2.,  2.],
       [ 1.,  1.,  1.],
       [ 2.,  3.,  6.],
       [ 0.,  2.,  0.],
       [ 0.,  1.,  0.]])


SofaSofa数据科学社区 DS面经 问答 实战

chrisliang   2018-10-23 12:50

0

直接手算似乎更方便

df['x1_x2'] = df['x1'] * df['x2']
SofaSofa数据科学社区 DS面经 问答 实战

蘑菇蘑菇   2018-11-14 14:26



  相关主题

在进行数值编码时出现错误,怎么解决?   1回答

在分类问题中,有什么方法可以得到特征的重要性?   2回答

partial dependence是什么意思?   1回答

一个特征有两个可选的值,只需满足其中一个即可,该如何处理?   1回答

对于组合特征怎么理解?   1回答

AIC可以是负数吗?   1回答

gbdt如何对连续特征离散化   1回答

训练样本中每个维度是否独立对回归结果的影响   2回答

python使用MFCC特征训练GMMHMM模型   2回答

关于K均值聚类的权重问题   2回答

随机森林给出的变量的Importance是怎么来的   2回答

对于数值特征,决策树是如何决定阈值的?   3回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!