featuretools.selection.remove_highly_correlated_features#
- featuretools.selection.remove_highly_correlated_features(feature_matrix, features=None, pct_corr_threshold=0.95, features_to_check=None, features_to_keep=None)[source]#
移除特征矩阵中与另一列高度相关的列。
注意
我们假设,对于一对特征,由
dfs
生成的特征矩阵中靠右的特征更复杂。如果特征矩阵中列的顺序与dfs
生成的顺序不同,则此假设不成立。- 参数:
feature_matrix (
pd.DataFrame
) – DataFrame,其列是特征名称,行是实例。如果 Woodwork 未初始化,将执行 Woodwork 初始化,这可能导致类型与 Featuretools 创建的原始特征矩阵中的类型略有不同。features (list[
featuretools.FeatureBase
] 或 list[str], optional) – 要选择的特征列表。pct_corr_threshold (float) – 被视为高度相关的相关性阈值。默认为 0.95。
features_to_check (list[str], optional) – 要检查是否存在高度相关对的列名列表。不会检查任何其他列,这意味着只有此列表中的列可能被移除。如果为 null,则默认检查所有列。
features_to_keep (list[str], optional) – 即使与其他列相关联也要保留的列名列表。如果为 null,则所有列都将是移除的候选列。
- 返回值:
特征矩阵和生成的特征定义列表。与 dfs 输出匹配。如果未提供特征列表作为输入,则不会返回特征列表。为获得一致结果,请勿更改 dfs 输出的特征顺序。
- 返回类型:
pd.DataFrame, list[
FeatureBase
]