@@ -498,9 +498,23 @@ <h1 class="modulename">
498498< span class ="sd "> :param xlabel=x axis label</ span >
499499< span class ="sd "> :param show: logical, if True call matplotlib.pyplot.show()</ span >
500500< span class ="sd "> :return: None</ span >
501+
502+ < span class ="sd "> Example:</ span >
503+
504+ < span class ="sd "> d = pandas.DataFrame({</ span >
505+ < span class ="sd "> 'x': [.1, .2, .3, .4, .5],</ span >
506+ < span class ="sd "> 'y': [False, False, True, True, False]</ span >
507+ < span class ="sd "> })</ span >
508+ < span class ="sd "> d['x0'] = 1 - d['x']</ span >
509+ < span class ="sd "> pmat = numpy.asarray(d.loc[:, ['x0', 'x']])</ span >
510+
511+ < span class ="sd "> wvpy.util.dual_density_plot_proba1(</ span >
512+ < span class ="sd "> probs=pmat,</ span >
513+ < span class ="sd "> istrue=d['y'],</ span >
514+ < span class ="sd "> )</ span >
501515< span class ="sd "> """</ span >
502- < span class ="c1 "> # TODO: vectorize</ span >
503516 < span class ="n "> istrue</ span > < span class ="o "> =</ span > < span class ="n "> numpy</ span > < span class ="o "> .</ span > < span class ="n "> asarray</ span > < span class ="p "> (</ span > < span class ="n "> istrue</ span > < span class ="p "> )</ span >
517+ < span class ="n "> probs</ span > < span class ="o "> =</ span > < span class ="n "> numpy</ span > < span class ="o "> .</ span > < span class ="n "> asarray</ span > < span class ="p "> (</ span > < span class ="n "> probs</ span > < span class ="p "> )</ span >
504518 < span class ="n "> matplotlib</ span > < span class ="o "> .</ span > < span class ="n "> pyplot</ span > < span class ="o "> .</ span > < span class ="n "> gcf</ span > < span class ="p "> ()</ span > < span class ="o "> .</ span > < span class ="n "> clear</ span > < span class ="p "> ()</ span >
505519 < span class ="n "> preds_on_positive</ span > < span class ="o "> =</ span > < span class ="p "> [</ span >
506520 < span class ="n "> probs</ span > < span class ="p "> [</ span > < span class ="n "> i</ span > < span class ="p "> ,</ span > < span class ="mi "> 1</ span > < span class ="p "> ]</ span > < span class ="k "> for</ span > < span class ="n "> i</ span > < span class ="ow "> in</ span > < span class ="nb "> range</ span > < span class ="p "> (</ span > < span class ="nb "> len</ span > < span class ="p "> (</ span > < span class ="n "> probs</ span > < span class ="p "> ))</ span > < span class ="k "> if</ span > < span class ="n "> istrue</ span > < span class ="p "> [</ span > < span class ="n "> i</ span > < span class ="p "> ]</ span > < span class ="o "> ==</ span > < span class ="n "> truth_target</ span >
@@ -526,9 +540,23 @@ <h1 class="modulename">
526540< span class ="sd "> :param istrue: vector of ground truth to condition on</ span >
527541< span class ="sd "> :param show: logical, if True call matplotlib.pyplot.show()</ span >
528542< span class ="sd "> :return: None</ span >
543+
544+ < span class ="sd "> Example:</ span >
545+
546+ < span class ="sd "> d = pandas.DataFrame({</ span >
547+ < span class ="sd "> 'x': [.1, .2, .3, .4, .5],</ span >
548+ < span class ="sd "> 'y': [False, False, True, True, False]</ span >
549+ < span class ="sd "> })</ span >
550+ < span class ="sd "> d['x0'] = 1 - d['x']</ span >
551+ < span class ="sd "> pmat = numpy.asarray(d.loc[:, ['x0', 'x']])</ span >
552+
553+ < span class ="sd "> wvpy.util.dual_hist_plot_proba1(</ span >
554+ < span class ="sd "> probs=pmat,</ span >
555+ < span class ="sd "> istrue=d['y'],</ span >
556+ < span class ="sd "> )</ span >
529557< span class ="sd "> """</ span >
530- < span class ="c1 "> # TODO: vectorize</ span >
531558 < span class ="n "> istrue</ span > < span class ="o "> =</ span > < span class ="n "> numpy</ span > < span class ="o "> .</ span > < span class ="n "> asarray</ span > < span class ="p "> (</ span > < span class ="n "> istrue</ span > < span class ="p "> )</ span >
559+ < span class ="n "> probs</ span > < span class ="o "> =</ span > < span class ="n "> numpy</ span > < span class ="o "> .</ span > < span class ="n "> asarray</ span > < span class ="p "> (</ span > < span class ="n "> probs</ span > < span class ="p "> )</ span >
532560 < span class ="n "> matplotlib</ span > < span class ="o "> .</ span > < span class ="n "> pyplot</ span > < span class ="o "> .</ span > < span class ="n "> gcf</ span > < span class ="p "> ()</ span > < span class ="o "> .</ span > < span class ="n "> clear</ span > < span class ="p "> ()</ span >
533561 < span class ="n "> pf</ span > < span class ="o "> =</ span > < span class ="n "> pandas</ span > < span class ="o "> .</ span > < span class ="n "> DataFrame</ span > < span class ="p "> (</ span >
534562 < span class ="p "> {</ span > < span class ="s2 "> "prob"</ span > < span class ="p "> :</ span > < span class ="p "> [</ span > < span class ="n "> probs</ span > < span class ="p "> [</ span > < span class ="n "> i</ span > < span class ="p "> ,</ span > < span class ="mi "> 1</ span > < span class ="p "> ]</ span > < span class ="k "> for</ span > < span class ="n "> i</ span > < span class ="ow "> in</ span > < span class ="nb "> range</ span > < span class ="p "> (</ span > < span class ="n "> probs</ span > < span class ="o "> .</ span > < span class ="n "> shape</ span > < span class ="p "> [</ span > < span class ="mi "> 0</ span > < span class ="p "> ])],</ span > < span class ="s2 "> "istrue"</ span > < span class ="p "> :</ span > < span class ="n "> istrue</ span > < span class ="p "> }</ span >
@@ -549,6 +577,18 @@ <h1 class="modulename">
549577< span class ="sd "> :param title: plot title</ span >
550578< span class ="sd "> :param show: logical, if True call matplotlib.pyplot.show()</ span >
551579< span class ="sd "> :return: None</ span >
580+
581+ < span class ="sd "> Example:</ span >
582+
583+ < span class ="sd "> d = pandas.DataFrame({</ span >
584+ < span class ="sd "> 'x': [.1, .2, .3, .4, .5],</ span >
585+ < span class ="sd "> 'y': [0, 0, 1, 1, 0]</ span >
586+ < span class ="sd "> })</ span >
587+
588+ < span class ="sd "> wvpy.util.gain_curve_plot(</ span >
589+ < span class ="sd "> prediction=d['x'],</ span >
590+ < span class ="sd "> outcome=d['y'],</ span >
591+ < span class ="sd "> )</ span >
552592< span class ="sd "> """</ span >
553593
554594 < span class ="n "> df</ span > < span class ="o "> =</ span > < span class ="n "> pandas</ span > < span class ="o "> .</ span > < span class ="n "> DataFrame</ span > < span class ="p "> (</ span >
@@ -610,6 +650,18 @@ <h1 class="modulename">
610650< span class ="sd "> :param title: plot title</ span >
611651< span class ="sd "> :param show: logical, if True call matplotlib.pyplot.show()</ span >
612652< span class ="sd "> :return: None</ span >
653+
654+ < span class ="sd "> Example:</ span >
655+
656+ < span class ="sd "> d = pandas.DataFrame({</ span >
657+ < span class ="sd "> 'x': [.1, .2, .3, .4, .5],</ span >
658+ < span class ="sd "> 'y': [0, 0, 1, 1, 0]</ span >
659+ < span class ="sd "> })</ span >
660+
661+ < span class ="sd "> wvpy.util.lift_curve_plot(</ span >
662+ < span class ="sd "> prediction=d['x'],</ span >
663+ < span class ="sd "> outcome=d['y'],</ span >
664+ < span class ="sd "> )</ span >
613665< span class ="sd "> """</ span >
614666
615667 < span class ="n "> df</ span > < span class ="o "> =</ span > < span class ="n "> pandas</ span > < span class ="o "> .</ span > < span class ="n "> DataFrame</ span > < span class ="p "> (</ span >
@@ -1691,9 +1743,23 @@ <h1 class="modulename">
16911743< span class ="sd "> :param xlabel=x axis label</ span >
16921744< span class ="sd "> :param show: logical, if True call matplotlib.pyplot.show()</ span >
16931745< span class ="sd "> :return: None</ span >
1746+
1747+ < span class ="sd "> Example:</ span >
1748+
1749+ < span class ="sd "> d = pandas.DataFrame({</ span >
1750+ < span class ="sd "> 'x': [.1, .2, .3, .4, .5],</ span >
1751+ < span class ="sd "> 'y': [False, False, True, True, False]</ span >
1752+ < span class ="sd "> })</ span >
1753+ < span class ="sd "> d['x0'] = 1 - d['x']</ span >
1754+ < span class ="sd "> pmat = numpy.asarray(d.loc[:, ['x0', 'x']])</ span >
1755+
1756+ < span class ="sd "> wvpy.util.dual_density_plot_proba1(</ span >
1757+ < span class ="sd "> probs=pmat,</ span >
1758+ < span class ="sd "> istrue=d['y'],</ span >
1759+ < span class ="sd "> )</ span >
16941760< span class ="sd "> """</ span >
1695- < span class ="c1 "> # TODO: vectorize</ span >
16961761 < span class ="n "> istrue</ span > < span class ="o "> =</ span > < span class ="n "> numpy</ span > < span class ="o "> .</ span > < span class ="n "> asarray</ span > < span class ="p "> (</ span > < span class ="n "> istrue</ span > < span class ="p "> )</ span >
1762+ < span class ="n "> probs</ span > < span class ="o "> =</ span > < span class ="n "> numpy</ span > < span class ="o "> .</ span > < span class ="n "> asarray</ span > < span class ="p "> (</ span > < span class ="n "> probs</ span > < span class ="p "> )</ span >
16971763 < span class ="n "> matplotlib</ span > < span class ="o "> .</ span > < span class ="n "> pyplot</ span > < span class ="o "> .</ span > < span class ="n "> gcf</ span > < span class ="p "> ()</ span > < span class ="o "> .</ span > < span class ="n "> clear</ span > < span class ="p "> ()</ span >
16981764 < span class ="n "> preds_on_positive</ span > < span class ="o "> =</ span > < span class ="p "> [</ span >
16991765 < span class ="n "> probs</ span > < span class ="p "> [</ span > < span class ="n "> i</ span > < span class ="p "> ,</ span > < span class ="mi "> 1</ span > < span class ="p "> ]</ span > < span class ="k "> for</ span > < span class ="n "> i</ span > < span class ="ow "> in</ span > < span class ="nb "> range</ span > < span class ="p "> (</ span > < span class ="nb "> len</ span > < span class ="p "> (</ span > < span class ="n "> probs</ span > < span class ="p "> ))</ span > < span class ="k "> if</ span > < span class ="n "> istrue</ span > < span class ="p "> [</ span > < span class ="n "> i</ span > < span class ="p "> ]</ span > < span class ="o "> ==</ span > < span class ="n "> truth_target</ span >
@@ -1725,6 +1791,20 @@ <h1 class="modulename">
17251791:param xlabel=x axis label
17261792:param show: logical, if True call matplotlib.pyplot.show()
17271793:return: None</ p >
1794+
1795+ < p > Example:</ p >
1796+
1797+ < p > d = pandas.DataFrame({
1798+ 'x': [.1, .2, .3, .4, .5],
1799+ 'y': [False, False, True, True, False]
1800+ })
1801+ d['x0'] = 1 - d['x']
1802+ pmat = numpy.asarray(d.loc[:, ['x0', 'x']])</ p >
1803+
1804+ < p > < a href ="#dual_density_plot_proba1 "> wvpy.util.dual_density_plot_proba1</ a > (
1805+ probs=pmat,
1806+ istrue=d['y'],
1807+ )</ p >
17281808</ div >
17291809
17301810
@@ -1747,9 +1827,23 @@ <h1 class="modulename">
17471827< span class ="sd "> :param istrue: vector of ground truth to condition on</ span >
17481828< span class ="sd "> :param show: logical, if True call matplotlib.pyplot.show()</ span >
17491829< span class ="sd "> :return: None</ span >
1830+
1831+ < span class ="sd "> Example:</ span >
1832+
1833+ < span class ="sd "> d = pandas.DataFrame({</ span >
1834+ < span class ="sd "> 'x': [.1, .2, .3, .4, .5],</ span >
1835+ < span class ="sd "> 'y': [False, False, True, True, False]</ span >
1836+ < span class ="sd "> })</ span >
1837+ < span class ="sd "> d['x0'] = 1 - d['x']</ span >
1838+ < span class ="sd "> pmat = numpy.asarray(d.loc[:, ['x0', 'x']])</ span >
1839+
1840+ < span class ="sd "> wvpy.util.dual_hist_plot_proba1(</ span >
1841+ < span class ="sd "> probs=pmat,</ span >
1842+ < span class ="sd "> istrue=d['y'],</ span >
1843+ < span class ="sd "> )</ span >
17501844< span class ="sd "> """</ span >
1751- < span class ="c1 "> # TODO: vectorize</ span >
17521845 < span class ="n "> istrue</ span > < span class ="o "> =</ span > < span class ="n "> numpy</ span > < span class ="o "> .</ span > < span class ="n "> asarray</ span > < span class ="p "> (</ span > < span class ="n "> istrue</ span > < span class ="p "> )</ span >
1846+ < span class ="n "> probs</ span > < span class ="o "> =</ span > < span class ="n "> numpy</ span > < span class ="o "> .</ span > < span class ="n "> asarray</ span > < span class ="p "> (</ span > < span class ="n "> probs</ span > < span class ="p "> )</ span >
17531847 < span class ="n "> matplotlib</ span > < span class ="o "> .</ span > < span class ="n "> pyplot</ span > < span class ="o "> .</ span > < span class ="n "> gcf</ span > < span class ="p "> ()</ span > < span class ="o "> .</ span > < span class ="n "> clear</ span > < span class ="p "> ()</ span >
17541848 < span class ="n "> pf</ span > < span class ="o "> =</ span > < span class ="n "> pandas</ span > < span class ="o "> .</ span > < span class ="n "> DataFrame</ span > < span class ="p "> (</ span >
17551849 < span class ="p "> {</ span > < span class ="s2 "> "prob"</ span > < span class ="p "> :</ span > < span class ="p "> [</ span > < span class ="n "> probs</ span > < span class ="p "> [</ span > < span class ="n "> i</ span > < span class ="p "> ,</ span > < span class ="mi "> 1</ span > < span class ="p "> ]</ span > < span class ="k "> for</ span > < span class ="n "> i</ span > < span class ="ow "> in</ span > < span class ="nb "> range</ span > < span class ="p "> (</ span > < span class ="n "> probs</ span > < span class ="o "> .</ span > < span class ="n "> shape</ span > < span class ="p "> [</ span > < span class ="mi "> 0</ span > < span class ="p "> ])],</ span > < span class ="s2 "> "istrue"</ span > < span class ="p "> :</ span > < span class ="n "> istrue</ span > < span class ="p "> }</ span >
@@ -1769,6 +1863,20 @@ <h1 class="modulename">
17691863:param istrue: vector of ground truth to condition on
17701864:param show: logical, if True call matplotlib.pyplot.show()
17711865:return: None</ p >
1866+
1867+ < p > Example:</ p >
1868+
1869+ < p > d = pandas.DataFrame({
1870+ 'x': [.1, .2, .3, .4, .5],
1871+ 'y': [False, False, True, True, False]
1872+ })
1873+ d['x0'] = 1 - d['x']
1874+ pmat = numpy.asarray(d.loc[:, ['x0', 'x']])</ p >
1875+
1876+ < p > < a href ="#dual_hist_plot_proba1 "> wvpy.util.dual_hist_plot_proba1</ a > (
1877+ probs=pmat,
1878+ istrue=d['y'],
1879+ )</ p >
17721880</ div >
17731881
17741882
@@ -1792,6 +1900,18 @@ <h1 class="modulename">
17921900< span class ="sd "> :param title: plot title</ span >
17931901< span class ="sd "> :param show: logical, if True call matplotlib.pyplot.show()</ span >
17941902< span class ="sd "> :return: None</ span >
1903+
1904+ < span class ="sd "> Example:</ span >
1905+
1906+ < span class ="sd "> d = pandas.DataFrame({</ span >
1907+ < span class ="sd "> 'x': [.1, .2, .3, .4, .5],</ span >
1908+ < span class ="sd "> 'y': [0, 0, 1, 1, 0]</ span >
1909+ < span class ="sd "> })</ span >
1910+
1911+ < span class ="sd "> wvpy.util.gain_curve_plot(</ span >
1912+ < span class ="sd "> prediction=d['x'],</ span >
1913+ < span class ="sd "> outcome=d['y'],</ span >
1914+ < span class ="sd "> )</ span >
17951915< span class ="sd "> """</ span >
17961916
17971917 < span class ="n "> df</ span > < span class ="o "> =</ span > < span class ="n "> pandas</ span > < span class ="o "> .</ span > < span class ="n "> DataFrame</ span > < span class ="p "> (</ span >
@@ -1853,6 +1973,18 @@ <h1 class="modulename">
18531973:param title: plot title
18541974:param show: logical, if True call matplotlib.pyplot.show()
18551975:return: None</ p >
1976+
1977+ < p > Example:</ p >
1978+
1979+ < p > d = pandas.DataFrame({
1980+ 'x': [.1, .2, .3, .4, .5],
1981+ 'y': [0, 0, 1, 1, 0]
1982+ })</ p >
1983+
1984+ < p > < a href ="#gain_curve_plot "> wvpy.util.gain_curve_plot</ a > (
1985+ prediction=d['x'],
1986+ outcome=d['y'],
1987+ )</ p >
18561988</ div >
18571989
18581990
@@ -1876,6 +2008,18 @@ <h1 class="modulename">
18762008< span class ="sd "> :param title: plot title</ span >
18772009< span class ="sd "> :param show: logical, if True call matplotlib.pyplot.show()</ span >
18782010< span class ="sd "> :return: None</ span >
2011+
2012+ < span class ="sd "> Example:</ span >
2013+
2014+ < span class ="sd "> d = pandas.DataFrame({</ span >
2015+ < span class ="sd "> 'x': [.1, .2, .3, .4, .5],</ span >
2016+ < span class ="sd "> 'y': [0, 0, 1, 1, 0]</ span >
2017+ < span class ="sd "> })</ span >
2018+
2019+ < span class ="sd "> wvpy.util.lift_curve_plot(</ span >
2020+ < span class ="sd "> prediction=d['x'],</ span >
2021+ < span class ="sd "> outcome=d['y'],</ span >
2022+ < span class ="sd "> )</ span >
18792023< span class ="sd "> """</ span >
18802024
18812025 < span class ="n "> df</ span > < span class ="o "> =</ span > < span class ="n "> pandas</ span > < span class ="o "> .</ span > < span class ="n "> DataFrame</ span > < span class ="p "> (</ span >
@@ -1915,6 +2059,18 @@ <h1 class="modulename">
19152059:param title: plot title
19162060:param show: logical, if True call matplotlib.pyplot.show()
19172061:return: None</ p >
2062+
2063+ < p > Example:</ p >
2064+
2065+ < p > d = pandas.DataFrame({
2066+ 'x': [.1, .2, .3, .4, .5],
2067+ 'y': [0, 0, 1, 1, 0]
2068+ })</ p >
2069+
2070+ < p > < a href ="#lift_curve_plot "> wvpy.util.lift_curve_plot</ a > (
2071+ prediction=d['x'],
2072+ outcome=d['y'],
2073+ )</ p >
19182074</ div >
19192075
19202076
0 commit comments