Machine learning / Decision Tree Using Numpy

It is used to take decisions on a given data set.

Consider the below data set("products.csv").
Product price quantity profit category productconditiongood
A1 200 190 49 x YES
A2 400 560 45 x YES
A3 200 329 45 x YES
A4 100 265 40 x YES
A5 700 540 55 x YES
A6 200 329 55 x YES
A7 600 509 40 x YES
A8 700 765 42 x YES
A9 700 512 48 x YES
A10 800 550 49 x YES
A11 300 380 49 x YES
A12 500 390 51 x YES
A13 200 512 49 x YES
A14 800 652 44 x YES
A15 800 726 47 x YES
A16 800 730 47 y YES
A17 800 765 49 y YES
A18 1400 680 54 y YES
A19 800 519 54 y YES
A20 1200 728 55 y YES
A21 800 984 44 y NO
A22 1200 828 49 y NO
A23 1300 765 49 y NO
A24 800 815 49 y NO
A25 1200 815 49 y NO
A26 700 865 52 y NO
A27 1200 890 54 y NO
A28 1200 1125 64 y NO
A29 800 923 59 z NO
A30 1200 1105 64 z NO
A31 1300 1005 65 z NO
A32 1200 1146 67 z NO
A33 800 635 54 z NO
A34 800 790 58 z NO
A35 800 805 59 z NO
A36 1700 795 70 z NO


Read and print the data set: using pandas
Statistical Calculation Python Program
pandas read and print import pandas
from sklearn import tree
import pydotplus
from sklearn.tree import DecisionTreeClassifier
import matplotlib.pyplot as plt
import matplotlib.image as pltimg
df = pandas.read_csv("products.csv")
print(df)

Result
0     A1     200     190     49    x     YES
1     A2     400     560     45     x     YES
2     A3     200     329     45     x     YES
3     A4     100     265     40     x     YES
4     A5     700     540     55     x     YES
5     A6     200     329     55     x     YES
6     A7    600     509    40     x     YES
7     A8     700     765     42     x     YES
8     A9     700     512     48     x     YES
9     A10     800     550     49     x     YES
10     A11     300     380     49     x     YES
11     A12     500     390     51     x     YES
12     A13     200     512     49     x     YES
13     A14     800     652     44     x     YES
14     A15     800     726     47     x     YES
15     A16     800     730     47     y     YES
16     A17     800     765     49     y     YES
17     A18     1400     680     54     y     YES
18     A19     800     519     54     y     YES
19     A20     1200     728     55     y     YES
20     A21     800     984     44     y     NO
21     A22     1200     828     49     y     NO
22     A23     1300     765     49     y     NO
23     A24     800     815     49     y     NO
24     A25     1200     815     49     y     NO
25     A26     700     865     52     y     NO
26     A27     1200     890     54     y     NO
27     A28     1200     1125     64     y     NO
28     A29     800     923     59     z     NO
29     A30     1200     1105     64     z     NO
30     A31     1300     1005     65     z     NO
31     A32     1200     1146     67     z     NO
32     A33     800     635     54     z     NO
33     A34     800     790     58     z     NO
34     A35     800     805     59     z     NO
35     A36     1700     795     70     z     NO


Statistical Calculation Python Program
pandas numerical to strings import pandas
from sklearn import tree
import pydotplus
from sklearn.tree import DecisionTreeClassifier
import matplotlib.pyplot as plt
import matplotlib.image as pltimg
fp = pandas.read_csv("products.csv")
points = {'x': 2, 'y': 4, 'z': 6}
fp['category'] = fp['category'].map(points)
points = {'YES': 1, 'NO': 0}
fp['productconditiongood'] = fp['productconditiongood'].map(points)
print(fp)
Result
0     A1     200     190     49    x     1
1     A2     400     560     45     x     1
2     A3     200     329     45     x     1
3     A4     100     265     40     x     1
4     A5     700     540     55     x     1
5     A6     200     329     55     x     1
6     A7    600     509    40     x     1
7     A8     700     765     42     x     1
8     A9     700     512     48     x     1
9     A10     800     550     49     x     1
10     A11     300     380     49     x     1
11     A12     500     390     51     x     1
12     A13     200     512     49     x     1
13     A14     800     652     44     x     1
14     A15     800     726     47     x     1
15     A16     800     730     47     y     1
16     A17     800     765     49     y     1
17     A18     1400     680     54     y     1
18     A19     800     519     54     y     1
19     A20     1200     728     55     y     1
20     A21     800     984     44     y     0
21     A22     1200     828     49     y     0
22     A23     1300     765     49     y     0
23     A24     800     815     49     y     0
24     A25     1200     815     49     y     0
25     A26     700     865     52     y     0
26     A27     1200     890     54     y     0
27     A28     1200     1125     64     y     0
28     A29     800     923     59     z     0
29     A30     1200     1105     64     z     0
30     A31     1300     1005     65     z     0
31     A32     1200     1146     67     z     0
32     A33     800     635     54     z     0
33     A34     800     790     58     z     0
34     A35     800     805     59     z     0
35     A36     1700     795     70     z     0


Home     Back