def select_desired_features(full_features, desired_features, feature_dict): 
    """
    A function which reduces a feature set down to only the desired features specified in a list 
    Features must match with keys stored in the passed dictionary 
    """
    
    # print(f"{full_features.shape[1]} attributes available for selection")
    feature_index_list = []
    for i in desired_features: 
        feature_index_list.append(feature_dict[i])
    new_features = full_features[:,feature_index_list]  
    # print(f"{new_features.shape[1]} attributes selected for classification")
    return new_features