make_column_selector#

class sklearn.compose.make_column_selector(pattern=None, *, dtype_include=None, dtype_exclude=None)[源代码]#

创建一个可调用文件来选择要使用的列 ColumnTransformer .

make_column_selector 可以根据数据类型或具有regex的列名称选择列。当使用多个选择标准时, all 条件必须匹配才能选择列。

有关如何使用的示例 make_column_selectorColumnTransformer 根据数据类型选择列(即 dtype ),参考 混合类型的列Transformer .

参数:
pattern字符串,默认=无

将包括包含此regex模式的列的名称。如果无,则不会根据模式选择列选择。

dtype_include列数据类型或列数据类型列表,默认=无

要包含的d类型的选择。详情见 pandas.DataFrame.select_dtypes .

dtype_exclude列数据类型或列数据类型列表,默认=无

要排除的数据类型的选择。详情见 pandas.DataFrame.select_dtypes .

返回:
selector可调用

可调用要由使用的列选择 ColumnTransformer .

参见

ColumnTransformer

类,该类允许将数据列子集上使用的多个Transformer对象的输出组合到单个特征空间中。

示例

>>> from sklearn.preprocessing import StandardScaler, OneHotEncoder
>>> from sklearn.compose import make_column_transformer
>>> from sklearn.compose import make_column_selector
>>> import numpy as np
>>> import pandas as pd
>>> X = pd.DataFrame({'city': ['London', 'London', 'Paris', 'Sallisaw'],
...                   'rating': [5, 3, 4, 5]})
>>> ct = make_column_transformer(
...       (StandardScaler(),
...        make_column_selector(dtype_include=np.number)),  # rating
...       (OneHotEncoder(),
...        make_column_selector(dtype_include=object)))  # city
>>> ct.fit_transform(X)
array([[ 0.90453403,  1.        ,  0.        ,  0.        ],
       [-1.50755672,  1.        ,  0.        ,  0.        ],
       [-0.30151134,  0.        ,  1.        ,  0.        ],
       [ 0.90453403,  0.        ,  0.        ,  1.        ]])
__call__(df)[源代码]#

可调用要由使用的列选择 ColumnTransformer .

参数:
df形状框架(n_features,n_samples)

从中选择列的数据框架。