Пример #1
0
def test_pairwise_mutual_information():
    from pandas import DataFrame
    from .testdata import adults01
    frame = DataFrame(adults01)
    mi = pairwise_mutual_information(frame)
    from numpy import allclose, alltrue
    assert allclose(mi, mi.T)
    assert alltrue(mi >= 0.0)
    assert alltrue(mi <= 1.0)
def test_plot_figures_output_show():
    from pandas import DataFrame
    plot_confusion_matrix(DataFrame({
        'True': [2, 3],
        'False': [5, 0]
    }),
                          otype='show')
    plot_confusion_matrix(DataFrame({
        '7th-8th': [2, 3, 5, 0],
        'Masters': [0, 4, 1, 0],
        '11th': [0, 1, 5, 2],
        'Bachelors': [2, 0, 0, 6]
    }),
                          otype='show')

    bins = np.array([
        28., 29.25, 30.5, 31.75, 33., 34.25, 35.5, 36.75, 38., 39.25, 40.5,
        41.75, 43., 44.25, 45.5, 46.75, 48., 49.25, 50.5
    ])
    counts = np.array(
        [[1, 0, 1, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0],
         [1, 0, 1, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1]])
    plot_histogram(bins, counts, otype='show')

    bins = np.array(['Private', 'Self-emp-not-inc', 'State-gov'])
    counts = np.array([[6, 2, 1], [6, 2, 1]])
    plot_histogram(bins, counts, otype='show')

    bins = np.array(['11th', '9th', 'Bachelors', 'HS-grad', 'Masters'])
    counts = np.array([[3, 2, 2, 1, 1], [3, 2, 2, 1, 1]])
    plot_histogram(bins, counts, otype='show')

    bins = np.array([
        5., 5.45, 5.9, 6.35, 6.8, 7.25, 7.7, 8.15, 8.6, 9.05, 9.5, 9.95, 10.4,
        10.85, 11.3, 11.75, 12.2, 12.65, 13.1
    ])
    counts = np.array(
        [[1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0],
         [1, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0]])
    plot_histogram(bins, counts, otype='show')

    bins = np.array(['Female', 'Male'])
    counts = np.array([[5, 4], [5, 4]])
    plot_histogram(bins, counts, otype='show')

    from .testdata import adults01
    from ds4ml.metrics import pairwise_mutual_information
    data = pairwise_mutual_information(DataFrame(adults01))
    plot_heatmap(data, otype='show')
 def mi(self):
     """ Return mutual information of pairwise attributes. """
     from ds4ml.metrics import pairwise_mutual_information
     return pairwise_mutual_information(self)