Scikit learn 是否删除sklearn管道中的输入维度?

Scikit learn 是否删除sklearn管道中的输入维度?,scikit-learn,Scikit Learn,我在sklearn中有以下管道: pipe = sklearn.pipeline.Pipeline(steps=[ ('scalar', StandardScaler()), ('pca', utils.PCA(n_components=n_pca_components)), ('reduce',umap.UMAP(n_neighbors=umap_n_neighbors, min_dist=umap_min_dist, metric=umap_metric)),

我在sklearn中有以下管道:

pipe = sklearn.pipeline.Pipeline(steps=[
    ('scalar', StandardScaler()),
    ('pca', utils.PCA(n_components=n_pca_components)),
    ('reduce',umap.UMAP(n_neighbors=umap_n_neighbors, min_dist=umap_min_dist, metric=umap_metric)),
    ('model',utils.DBSCAN(eps=dbscan_eps,min_samples=dbscan_min_samples)),    
])
是否有简单的方法消除pca和umap之间步骤中的一个维度


因此,如果我的pca输出是(0:100,0:10),并且我希望在将管道中的数据传递到umap(0:100,1:10)之前删除第一个通道,那么您可能需要在这两个阶段之间进行一个中间步骤,以实现所需的功能


您可能在这两个阶段之间有一个中间步骤来实现您想要的功能

from sklearn.preprocessing import FunctionTransformer

def custom_function(x):
    # Add your code here

pipe = sklearn.pipeline.Pipeline(steps=[
    ('scalar', StandardScaler()),
    ('pca', utils.PCA(n_components=n_pca_components)),
    ('remove_dimension', FunctionTransformer(custom_function))
    ('reduce',umap.UMAP(n_neighbors=umap_n_neighbors, min_dist=umap_min_dist, metric=umap_metric)),
    ('model',utils.DBSCAN(eps=dbscan_eps,min_samples=dbscan_min_samples)),    
])