【问题标题】:Featurizer to eliminate features特征化器以消除特征
【发布时间】:2021-05-06 10:02:09
【问题描述】:

我正在尝试设置一个特征化器,它会删除我数据库的前 10 列以外的所有列。该数据库总共由 76 列组成。这个想法是将PolynomialFeatures(1)) 应用于我想保留的10 列,但是我看不到一种巧妙地消除剩余66 列的方法(我在想PolynomialFeatures(0)) 之类的东西,但它似乎不起作用。这个想法是将它们乘以常数0)。问题基本上是2:1)如何告诉DataFrameMapper将相同的特征化器应用于一系列列(即A_11到A_76); 2) 如何告诉DataFrameMapper 应用消除此类列的特征化器。

到目前为止,我尝试的(不完整的)代码如下所示。我将 A_11-A_76 表示为问题 1)(即范围)和 ?代码中的问题2:

from dml_iv.utilities import SubsetWrapper, ConstantModel
from econml.sklearn_extensions.linear_model import StatsModelsLinearRegression

col = ["A_"+str(k) for k in range(XW.shape[1])]
XW_db = pd.DataFrame(XW, columns=col)

from sklearn_pandas import DataFrameMapper

subset_names = set(['A_0','A_1','A_2','A_3','A_4','A_5','A_6','A_7','A_8','A_9','A_10'])
# list of indices of features X to use in the final model

mapper = DataFrameMapper([
('A_0', PolynomialFeatures(1)),
('A_1', PolynomialFeatures(1)),
('A_2', PolynomialFeatures(1)),
('A_3', PolynomialFeatures(1)),
('A_4', PolynomialFeatures(1)),
('A_5', PolynomialFeatures(1)),
('A_11 - A_66', ?)]) ## PROBLEMATIC PART

【问题讨论】:

    标签: python pandas scikit-learn feature-selection


    【解决方案1】:

    为什么不从数据框中删除不需要的列并映射剩下的内容?

    cols_map = [...] # list of columns to map
    cols_drop = [...] # list of columns to drop
    XW_db = XW_db.drop(cols_drop, axis=1) # you're left with only what to map
    mapper = DataFrameMapper(cols_map)
    ...
    

    如果不想删除列的原因是它们将在以后使用,您可以简单地将删除的结果分配给其他变量,从而创建几个更易于操作的子数据框:

    df2 = df1.drop(cols_drop2,axis=1) # df2 is a subset of df1
    df3 = df1.drop(cols_drop3,axis=1) # df3 is a subset of df1
    # Alternative is to decide what to keep instead of what to drop
    df4 = df1[cols_keep] # df4 is a subset of df1
    # df1 remains the full dataframe    
    

    【讨论】:

    • 感谢您的回复。实际上我不放弃它们的原因是我稍后使用了一个方法来获取整个对象(在本例中为映射器)并在其上使用 fit_transform 。重点和困难在于我必须使用特征化器来丢弃它们。
    猜你喜欢
    • 2019-07-15
    • 2018-05-23
    • 2017-05-10
    • 2018-05-21
    • 1970-01-01
    • 2015-08-07
    • 2019-01-26
    • 2020-02-02
    • 1970-01-01
    相关资源
    最近更新 更多