CFS 特征选择python代码
时间: 2024-05-06 21:13:53 浏览: 194
CFS(Correlation-based Feature Selection)是一种特征选择方法,它通过计算特征与目标变量之间的相关性来评估特征的重要性,并选择相关性较高的特征。下面是一个使用Python实现CFS特征选择的代码示例:
```python
import numpy as np
from sklearn.feature_selection import SelectKBest
from sklearn.feature_selection import chi2
def cfs(X, y, k):
# 计算特征与目标变量之间的相关性矩阵
corr_matrix = np.corrcoef(X.T, y)
# 计算特征与目标变量之间的相关性系数
corr_scores = corr_matrix[:-1, -1]
# 根据相关性系数排序,选择前k个特征
top_k_indices = np.argsort(np.abs(corr_scores))[-k:]
return top_k_indices
# 示例数据
X = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
y = np.array([1, 0, 1])
# 使用CFS选择2个特征
selected_indices = cfs(X, y, k=2)
selected_features = X[:, selected_indices]
print("Selected Features:")
print(selected_features)
```
上述代码中,我们首先计算特征与目标变量之间的相关性矩阵,然后计算相关性系数。接着,我们根据相关性系数的绝对值进行排序,并选择前k个特征。最后,我们输出选择的特征。
阅读全文