def count_features_type(features):
    """ Counts three different types of features (float, integer, binary).
    :param features: pandas.DataFrame
        A dataset in a panda's data frame
    :returns a tuple (binary, integer, float)
    """    
    counter={k.name: v for k, v in features.columns.to_series().groupby(features.dtypes)}
    binary=0
    if ('int64' in counter):
        binary=len(set(features.loc[:, (features<=1).all(axis=0)].columns.values) & set(features.loc[:, (features>=0).all(axis=0)].columns.values) & set(counter['int64']))    
    return (binary,len(counter['int64'])-binary if 'int64' in counter else 0,len(counter['float64']) if 'float64' in counter else 0)