features_i_df = pd.read_csv(self.subset_i, sep="\t", header=0)
if isinstance(X, pd.DataFrame): // use columns" names
self.feature_names = list(X.columns.values)
feature_i = [str(val) for val in features_i_df.values.flatten()]
elif isinstance(X, np.ndarray): // use index
self.feature_names = list(range(X.shape[1]))
feature_i = [int(val) for val in features_i_df.values.flatten()]
self.feat_list = list(set(feature_i).intersection(set(self.feature_names)))