Nixon, If you are using version 0.18 or later, you can reconstruct the information you need using the `decision_path` method:
http://scikit-learn.org/stable/auto_examples/tree/plot_unveil_tree_structure.html -Jeff On Tue, Feb 7, 2017 at 3:21 PM, Joel Nothman <[email protected]> wrote: > I don't think putting that array of indices in a visualisation is a great > idea! > > If you use my_tree.apply(X) you will be able to determine which leaf each > instance in X lands up at, and potentially trace up the tree from there. > > On 8 February 2017 at 01:26, Nixon Raj <[email protected]> wrote: > >> >> For Example, In the below decision tree dot file, I have 223 samples >> which splits into [174, 49] in the first split and [110, 1] in the 2nd split >> >> I would like to get the array of indices for the values of each split >> like >> >> *[174, 49] and their corresponding indices (idx) like [[0, 1 ,5, >> 7,....,200,221], [3, 4, 6, ....., 199,222,223]]* >> >> *[110, 1] and their corresponding indices (idx) like [[0,5,....200,221], >> [7]]* >> >> Please help me >> >> node [shape=box] ; >> 0 [label="X[0] <= 13.9191\nentropy = 0.7597\nsamples = 223\nvalue = [174, >> 49]"] ; >> 1 [label="X[1] <= 3.1973\nentropy = 0.0741\nsamples = 111\nvalue = [110, >> 1]"] ; >> 0 -> 1 [labeldistance=2.5, labelangle=45, headlabel="True"] ; >> 2 [label="entropy = 0.0\nsamples = 109\nvalue = [109, 0]"] ; >> 1 -> 2 ; >> 3 [label="entropy = 1.0\nsamples = 2\nvalue = [1, 1]"] ; >> 1 -> 3 ; >> 4 [label="X[1] <= 3.1266\nentropy = 0.9852\nsamples = 112\nvalue = [64, >> 48]"] ; >> 0 -> 4 [labeldistance=2.5, labelangle=-45, headlabel="False"] ; >> 5 [label="X[2] <= -0.4882\nentropy = 0.7919\nsamples = 63\nvalue = [48, >> 15]"] ; >> 4 -> 5 ; >> 6 [label="entropy = 0.684\nsamples = 11\nvalue = [2, 9]"] ; >> 5 -> 6 ; >> 7 [label="X[2] <= 0.5422\nentropy = 0.5159\nsamples = 52\nvalue = [46, >> 6]"] ; >> 5 -> 7 ; >> 8 [label="entropy = 0.0\nsamples = 18\nvalue = [18, 0]"] ; >> 7 -> 8 ; >> 9 [label="X[2] <= 0.6497\nentropy = 0.6723\nsamples = 34\nvalue = [28, >> 6]"] ; >> 7 -> 9 ; >> 10 [label="entropy = 0.0\nsamples = 1\nvalue = [0, 1]"] ; >> 9 -> 10 ; >> 11 [label="X[2] <= 1.887\nentropy = 0.6136\nsamples = 33\nvalue = [28, >> 5]"] ; >> 9 -> 11 ; >> 12 [label="entropy = 0.0\nsamples = 12\nvalue = [12, 0]"] ; >> 11 -> 12 ; >> 13 [label="X[2] <= 2.6691\nentropy = 0.7919\nsamples = 21\nvalue = [16, >> 5]"] ; >> 11 -> 13 ; >> 14 [label="entropy = 0.8113\nsamples = 4\nvalue = [1, 3]"] ; >> 13 -> 14 ; >> 15 [label="entropy = 0.5226\nsamples = 17\nvalue = [15, 2]"] ; >> 13 -> 15 ; >> 16 [label="X[0] <= 17.3284\nentropy = 0.9113\nsamples = 49\nvalue = [16, >> 33]"] ; >> 4 -> 16 ; >> 17 [label="entropy = 0.9183\nsamples = 6\nvalue = [4, 2]"] ; >> 16 -> 17 ; >> 18 [label="X[2] <= 19.7048\nentropy = 0.8542\nsamples = 43\nvalue = [12, >> 31]"] ; >> 16 -> 18 ; >> 19 [label="X[2] <= 5.8511\nentropy = 0.8296\nsamples = 42\nvalue = [11, >> 31]"] ; >> 18 -> 19 ; >> 20 [label="X[0] <= 31.8916\nentropy = 0.878\nsamples = 37\nvalue = [11, >> 26]"] ; >> 19 -> 20 ; >> 21 [label="X[1] <= 3.3612\nentropy = 0.6666\nsamples = 23\nvalue = [4, >> 19]"] ; >> 20 -> 21 ; >> 22 [label="entropy = 0.8905\nsamples = 13\nvalue = [4, 9]"] ; >> 21 -> 22 ; >> 23 [label="entropy = 0.0\nsamples = 10\nvalue = [0, 10]"] ; >> 21 -> 23 ; >> 24 [label="entropy = 1.0\nsamples = 14\nvalue = [7, 7]"] ; >> 20 -> 24 ; >> 25 [label="entropy = 0.0\nsamples = 5\nvalue = [0, 5]"] ; >> 19 -> 25 ; >> 26 [label="entropy = 0.0\nsamples = 1\nvalue = [1, 0]"] ; >> 18 -> 26 ; >> } >> >> >> _______________________________________________ >> scikit-learn mailing list >> [email protected] >> https://mail.python.org/mailman/listinfo/scikit-learn >> >> > > _______________________________________________ > scikit-learn mailing list > [email protected] > https://mail.python.org/mailman/listinfo/scikit-learn > >
_______________________________________________ scikit-learn mailing list [email protected] https://mail.python.org/mailman/listinfo/scikit-learn
