in all_features = X_train.keys()
AttributeError: 'numpy.ndarray' object has no attribute 'keys'
This my code:
cor_list = []
#calculate the correlation with y for each feature
for i in all_features:
cor = np.corrcoef(X_train[i], y_train, rowvar=False)[0, 1]
cor_list.append(cor)
#replace NaN with 0
cor_list = [0 if np.isnan(i) else i for i in cor_list]
#feature_name
cor_feature = X_train.iloc[:np.argsort(np.abs(cor_list))[-num_feats:]].columns.tolist()
#feature selection? 0 for not select, 1 for select
cor_support = [True if i in cor_feature else False for i in all_features]
X_train_selected = pd.DataFrame(X_train, columns=cor_feature)
X_test_selected = pd.DataFrame(X_test, column = cor_feature)
# Correlation with output variable
return X_train_selected, X_test_selected
**This when i called in main:**
``` all_features = X_train.keys()
X_train_selected, X_test_selected = FS.Feature_cor_selector(X_train, X_test, y_train, 10, all_features) ```
[enter image description here][1]
ndarray does not have a "keys" attribute. You can find the documentation, and all of the attributes, https://numpy.org/doc/stable/reference/arrays.ndarray.html# . You should probably use X_train.flags()
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.