{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "
Заметка 4. Деревья решения и др.
\n", "
курса Введение в машинное обучение.
\n", "
Шокуров Антон В.
\n", "
shokurov.anton.v@yandex.ru
\n", "
http://машинноезрение.рф
\n", "
Версия 0.11
\n", "\n", "
Анотация
\n", "

\n", "Деревья решений. Ближайшего соседа. Используем библиотеку scikit-learn\n", "

\n", "\n", "

Это предварительная версия! Любые замечания приветствуются.

" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "from itertools import product\n", "\n", "import graphviz\n", "from sklearn import tree\n", "\n", "from sklearn import datasets\n", "from sklearn.tree import DecisionTreeClassifier\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "iris = datasets.load_iris()\n", "X = iris.data[:, [0, 2]]\n", "y = iris.target" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dict_keys(['data', 'target', 'target_names', 'DESCR', 'feature_names'])" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "iris.keys()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "import pandas as pd" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
sepal length (cm)sepal width (cm)petal length (cm)petal width (cm)
05.13.51.40.2
14.93.01.40.2
24.73.21.30.2
34.63.11.50.2
45.03.61.40.2
55.43.91.70.4
64.63.41.40.3
75.03.41.50.2
84.42.91.40.2
94.93.11.50.1
105.43.71.50.2
114.83.41.60.2
124.83.01.40.1
134.33.01.10.1
145.84.01.20.2
155.74.41.50.4
165.43.91.30.4
175.13.51.40.3
185.73.81.70.3
195.13.81.50.3
205.43.41.70.2
215.13.71.50.4
224.63.61.00.2
235.13.31.70.5
244.83.41.90.2
255.03.01.60.2
265.03.41.60.4
275.23.51.50.2
285.23.41.40.2
294.73.21.60.2
...............
1206.93.25.72.3
1215.62.84.92.0
1227.72.86.72.0
1236.32.74.91.8
1246.73.35.72.1
1257.23.26.01.8
1266.22.84.81.8
1276.13.04.91.8
1286.42.85.62.1
1297.23.05.81.6
1307.42.86.11.9
1317.93.86.42.0
1326.42.85.62.2
1336.32.85.11.5
1346.12.65.61.4
1357.73.06.12.3
1366.33.45.62.4
1376.43.15.51.8
1386.03.04.81.8
1396.93.15.42.1
1406.73.15.62.4
1416.93.15.12.3
1425.82.75.11.9
1436.83.25.92.3
1446.73.35.72.5
1456.73.05.22.3
1466.32.55.01.9
1476.53.05.22.0
1486.23.45.42.3
1495.93.05.11.8
\n", "

150 rows × 4 columns

\n", "
" ], "text/plain": [ " sepal length (cm) sepal width (cm) petal length (cm) petal width (cm)\n", "0 5.1 3.5 1.4 0.2\n", "1 4.9 3.0 1.4 0.2\n", "2 4.7 3.2 1.3 0.2\n", "3 4.6 3.1 1.5 0.2\n", "4 5.0 3.6 1.4 0.2\n", "5 5.4 3.9 1.7 0.4\n", "6 4.6 3.4 1.4 0.3\n", "7 5.0 3.4 1.5 0.2\n", "8 4.4 2.9 1.4 0.2\n", "9 4.9 3.1 1.5 0.1\n", "10 5.4 3.7 1.5 0.2\n", "11 4.8 3.4 1.6 0.2\n", "12 4.8 3.0 1.4 0.1\n", "13 4.3 3.0 1.1 0.1\n", "14 5.8 4.0 1.2 0.2\n", "15 5.7 4.4 1.5 0.4\n", "16 5.4 3.9 1.3 0.4\n", "17 5.1 3.5 1.4 0.3\n", "18 5.7 3.8 1.7 0.3\n", "19 5.1 3.8 1.5 0.3\n", "20 5.4 3.4 1.7 0.2\n", "21 5.1 3.7 1.5 0.4\n", "22 4.6 3.6 1.0 0.2\n", "23 5.1 3.3 1.7 0.5\n", "24 4.8 3.4 1.9 0.2\n", "25 5.0 3.0 1.6 0.2\n", "26 5.0 3.4 1.6 0.4\n", "27 5.2 3.5 1.5 0.2\n", "28 5.2 3.4 1.4 0.2\n", "29 4.7 3.2 1.6 0.2\n", ".. ... ... ... ...\n", "120 6.9 3.2 5.7 2.3\n", "121 5.6 2.8 4.9 2.0\n", "122 7.7 2.8 6.7 2.0\n", "123 6.3 2.7 4.9 1.8\n", "124 6.7 3.3 5.7 2.1\n", "125 7.2 3.2 6.0 1.8\n", "126 6.2 2.8 4.8 1.8\n", "127 6.1 3.0 4.9 1.8\n", "128 6.4 2.8 5.6 2.1\n", "129 7.2 3.0 5.8 1.6\n", "130 7.4 2.8 6.1 1.9\n", "131 7.9 3.8 6.4 2.0\n", "132 6.4 2.8 5.6 2.2\n", "133 6.3 2.8 5.1 1.5\n", "134 6.1 2.6 5.6 1.4\n", "135 7.7 3.0 6.1 2.3\n", "136 6.3 3.4 5.6 2.4\n", "137 6.4 3.1 5.5 1.8\n", "138 6.0 3.0 4.8 1.8\n", "139 6.9 3.1 5.4 2.1\n", "140 6.7 3.1 5.6 2.4\n", "141 6.9 3.1 5.1 2.3\n", "142 5.8 2.7 5.1 1.9\n", "143 6.8 3.2 5.9 2.3\n", "144 6.7 3.3 5.7 2.5\n", "145 6.7 3.0 5.2 2.3\n", "146 6.3 2.5 5.0 1.9\n", "147 6.5 3.0 5.2 2.0\n", "148 6.2 3.4 5.4 2.3\n", "149 5.9 3.0 5.1 1.8\n", "\n", "[150 rows x 4 columns]" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.DataFrame( iris.data )\n", "df.columns = iris.feature_names\n", "df" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "clf1 = DecisionTreeClassifier(max_depth=1)\n", "clf2 = DecisionTreeClassifier(max_depth=2)\n", "clf3 = DecisionTreeClassifier(max_depth=3)\n", "clf4 = DecisionTreeClassifier(max_depth=5)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeClassifier(class_weight=None, criterion='gini', max_depth=5,\n", " max_features=None, max_leaf_nodes=None,\n", " min_impurity_decrease=0.0, min_impurity_split=None,\n", " min_samples_leaf=1, min_samples_split=2,\n", " min_weight_fraction_leaf=0.0, presort=False, random_state=None,\n", " splitter='best')" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf1.fit(X, y)\n", "clf2.fit(X, y)\n", "clf3.fit(X, y)\n", "clf4.fit(X, y)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x_min, x_max = X[:, 0].min() - 1, X[:, 0].max() + 1\n", "y_min, y_max = X[:, 1].min() - 1, X[:, 1].max() + 1\n", "xx, yy = np.meshgrid(np.arange(x_min, x_max, 0.1),\n", " np.arange(y_min, y_max, 0.1))\n", "\n", "f, axarr = plt.subplots(2, 2, sharex='col', sharey='row', figsize=(10, 8))\n", "\n", "for idx, clf, tt in zip(product([0, 1], [0, 1]),\n", " [clf1, clf2, clf3, clf4],\n", " ['Decision Tree (depth=1)', 'Decision Tree (depth=2)',\n", " 'Decision Tree (depth=3)', 'Decision Tree (depth=5)']):\n", "\n", " Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])\n", " Z = Z.reshape(xx.shape)\n", "\n", " axarr[idx[0], idx[1]].contourf(xx, yy, Z, alpha=0.4)\n", " axarr[idx[0], idx[1]].scatter(X[:, 0], X[:, 1], c=y,\n", " s=20, edgecolor='k')\n", " axarr[idx[0], idx[1]].set_title(tt)\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "dot_data = tree.export_graphviz(clf1, out_file=None) \n", "graph = graphviz.Source(dot_data) \n", "#graph.render(\"iris\") " ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "Tree\n", "\n", "\n", "0\n", "\n", "petal length (cm) ≤ 2.45\n", "gini = 0.667\n", "samples = 150\n", "value = [50, 50, 50]\n", "class = setosa\n", "\n", "\n", "1\n", "\n", "gini = 0.0\n", "samples = 50\n", "value = [50, 0, 0]\n", "class = setosa\n", "\n", "\n", "0->1\n", "\n", "\n", "True\n", "\n", "\n", "2\n", "\n", "gini = 0.5\n", "samples = 100\n", "value = [0, 50, 50]\n", "class = versicolor\n", "\n", "\n", "0->2\n", "\n", "\n", "False\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dot_data = tree.export_graphviz(clf1, out_file=None, \n", " feature_names=[iris.feature_names[0],iris.feature_names[2]],\n", " class_names=iris.target_names, \n", " filled=True, rounded=True, \n", " special_characters=True)\n", "graph = graphviz.Source(dot_data)\n", "graph" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "Tree\n", "\n", "\n", "0\n", "\n", "petal length (cm) ≤ 2.45\n", "gini = 0.667\n", "samples = 150\n", "value = [50, 50, 50]\n", "class = setosa\n", "\n", "\n", "1\n", "\n", "gini = 0.0\n", "samples = 50\n", "value = [50, 0, 0]\n", "class = setosa\n", "\n", "\n", "0->1\n", "\n", "\n", "True\n", "\n", "\n", "2\n", "\n", "petal length (cm) ≤ 4.75\n", "gini = 0.5\n", "samples = 100\n", "value = [0, 50, 50]\n", "class = versicolor\n", "\n", "\n", "0->2\n", "\n", "\n", "False\n", "\n", "\n", "3\n", "\n", "gini = 0.043\n", "samples = 45\n", "value = [0, 44, 1]\n", "class = versicolor\n", "\n", "\n", "2->3\n", "\n", "\n", "\n", "\n", "4\n", "\n", "gini = 0.194\n", "samples = 55\n", "value = [0, 6, 49]\n", "class = virginica\n", "\n", "\n", "2->4\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dot_data = tree.export_graphviz(clf2, out_file=None, \n", " feature_names=[iris.feature_names[0],iris.feature_names[2]],\n", " class_names=iris.target_names, \n", " filled=True, rounded=True, \n", " special_characters=True)\n", "graph = graphviz.Source(dot_data)\n", "graph" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "Tree\n", "\n", "\n", "0\n", "\n", "petal length (cm) ≤ 2.45\n", "gini = 0.667\n", "samples = 150\n", "value = [50, 50, 50]\n", "class = setosa\n", "\n", "\n", "1\n", "\n", "gini = 0.0\n", "samples = 50\n", "value = [50, 0, 0]\n", "class = setosa\n", "\n", "\n", "0->1\n", "\n", "\n", "True\n", "\n", "\n", "2\n", "\n", "petal length (cm) ≤ 4.75\n", "gini = 0.5\n", "samples = 100\n", "value = [0, 50, 50]\n", "class = versicolor\n", "\n", "\n", "0->2\n", "\n", "\n", "False\n", "\n", "\n", "3\n", "\n", "sepal length (cm) ≤ 4.95\n", "gini = 0.043\n", "samples = 45\n", "value = [0, 44, 1]\n", "class = versicolor\n", "\n", "\n", "2->3\n", "\n", "\n", "\n", "\n", "6\n", "\n", "petal length (cm) ≤ 5.05\n", "gini = 0.194\n", "samples = 55\n", "value = [0, 6, 49]\n", "class = virginica\n", "\n", "\n", "2->6\n", "\n", "\n", "\n", "\n", "4\n", "\n", "gini = 0.5\n", "samples = 2\n", "value = [0, 1, 1]\n", "class = versicolor\n", "\n", "\n", "3->4\n", "\n", "\n", "\n", "\n", "5\n", "\n", "gini = 0.0\n", "samples = 43\n", "value = [0, 43, 0]\n", "class = versicolor\n", "\n", "\n", "3->5\n", "\n", "\n", "\n", "\n", "7\n", "\n", "gini = 0.473\n", "samples = 13\n", "value = [0, 5, 8]\n", "class = virginica\n", "\n", "\n", "6->7\n", "\n", "\n", "\n", "\n", "8\n", "\n", "gini = 0.046\n", "samples = 42\n", "value = [0, 1, 41]\n", "class = virginica\n", "\n", "\n", "6->8\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dot_data = tree.export_graphviz(clf3, out_file=None, \n", " feature_names=[iris.feature_names[0],iris.feature_names[2]],\n", " class_names=iris.target_names, \n", " filled=True, rounded=True, \n", " special_characters=True)\n", "graph = graphviz.Source(dot_data)\n", "graph" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "Tree\n", "\n", "\n", "0\n", "\n", "petal length (cm) ≤ 2.45\n", "gini = 0.667\n", "samples = 150\n", "value = [50, 50, 50]\n", "class = setosa\n", "\n", "\n", "1\n", "\n", "gini = 0.0\n", "samples = 50\n", "value = [50, 0, 0]\n", "class = setosa\n", "\n", "\n", "0->1\n", "\n", "\n", "True\n", "\n", "\n", "2\n", "\n", "petal length (cm) ≤ 4.75\n", "gini = 0.5\n", "samples = 100\n", "value = [0, 50, 50]\n", "class = versicolor\n", "\n", "\n", "0->2\n", "\n", "\n", "False\n", "\n", "\n", "3\n", "\n", "sepal length (cm) ≤ 4.95\n", "gini = 0.043\n", "samples = 45\n", "value = [0, 44, 1]\n", "class = versicolor\n", "\n", "\n", "2->3\n", "\n", "\n", "\n", "\n", "8\n", "\n", "petal length (cm) ≤ 5.05\n", "gini = 0.194\n", "samples = 55\n", "value = [0, 6, 49]\n", "class = virginica\n", "\n", "\n", "2->8\n", "\n", "\n", "\n", "\n", "4\n", "\n", "petal length (cm) ≤ 3.9\n", "gini = 0.5\n", "samples = 2\n", "value = [0, 1, 1]\n", "class = versicolor\n", "\n", "\n", "3->4\n", "\n", "\n", "\n", "\n", "7\n", "\n", "gini = 0.0\n", "samples = 43\n", "value = [0, 43, 0]\n", "class = versicolor\n", "\n", "\n", "3->7\n", "\n", "\n", "\n", "\n", "5\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1, 0]\n", "class = versicolor\n", "\n", "\n", "4->5\n", "\n", "\n", "\n", "\n", "6\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 0, 1]\n", "class = virginica\n", "\n", "\n", "4->6\n", "\n", "\n", "\n", "\n", "9\n", "\n", "sepal length (cm) ≤ 6.5\n", "gini = 0.473\n", "samples = 13\n", "value = [0, 5, 8]\n", "class = virginica\n", "\n", "\n", "8->9\n", "\n", "\n", "\n", "\n", "14\n", "\n", "sepal length (cm) ≤ 6.05\n", "gini = 0.046\n", "samples = 42\n", "value = [0, 1, 41]\n", "class = virginica\n", "\n", "\n", "8->14\n", "\n", "\n", "\n", "\n", "10\n", "\n", "petal length (cm) ≤ 4.95\n", "gini = 0.32\n", "samples = 10\n", "value = [0, 2, 8]\n", "class = virginica\n", "\n", "\n", "9->10\n", "\n", "\n", "\n", "\n", "13\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [0, 3, 0]\n", "class = versicolor\n", "\n", "\n", "9->13\n", "\n", "\n", "\n", "\n", "11\n", "\n", "gini = 0.408\n", "samples = 7\n", "value = [0, 2, 5]\n", "class = virginica\n", "\n", "\n", "10->11\n", "\n", "\n", "\n", "\n", "12\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [0, 0, 3]\n", "class = virginica\n", "\n", "\n", "10->12\n", "\n", "\n", "\n", "\n", "15\n", "\n", "sepal length (cm) ≤ 5.95\n", "gini = 0.32\n", "samples = 5\n", "value = [0, 1, 4]\n", "class = virginica\n", "\n", "\n", "14->15\n", "\n", "\n", "\n", "\n", "18\n", "\n", "gini = 0.0\n", "samples = 37\n", "value = [0, 0, 37]\n", "class = virginica\n", "\n", "\n", "14->18\n", "\n", "\n", "\n", "\n", "16\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [0, 0, 4]\n", "class = virginica\n", "\n", "\n", "15->16\n", "\n", "\n", "\n", "\n", "17\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1, 0]\n", "class = versicolor\n", "\n", "\n", "15->17\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dot_data = tree.export_graphviz(clf4, out_file=None, \n", " feature_names=[iris.feature_names[0],iris.feature_names[2]],\n", " class_names=iris.target_names, \n", " filled=True, rounded=True, \n", " special_characters=True)\n", "graph = graphviz.Source(dot_data)\n", "graph" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeClassifier(class_weight=None, criterion='gini', max_depth=3,\n", " max_features=None, max_leaf_nodes=None,\n", " min_impurity_decrease=0.0, min_impurity_split=None,\n", " min_samples_leaf=1, min_samples_split=2,\n", " min_weight_fraction_leaf=0.0, presort=False, random_state=None,\n", " splitter='best')" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf = DecisionTreeClassifier(max_depth=3)\n", "clf.fit(iris.data, iris.target)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "Tree\n", "\n", "\n", "0\n", "\n", "petal length (cm) ≤ 2.45\n", "gini = 0.667\n", "samples = 150\n", "value = [50, 50, 50]\n", "class = setosa\n", "\n", "\n", "1\n", "\n", "gini = 0.0\n", "samples = 50\n", "value = [50, 0, 0]\n", "class = setosa\n", "\n", "\n", "0->1\n", "\n", "\n", "True\n", "\n", "\n", "2\n", "\n", "petal width (cm) ≤ 1.75\n", "gini = 0.5\n", "samples = 100\n", "value = [0, 50, 50]\n", "class = versicolor\n", "\n", "\n", "0->2\n", "\n", "\n", "False\n", "\n", "\n", "3\n", "\n", "petal length (cm) ≤ 4.95\n", "gini = 0.168\n", "samples = 54\n", "value = [0, 49, 5]\n", "class = versicolor\n", "\n", "\n", "2->3\n", "\n", "\n", "\n", "\n", "6\n", "\n", "petal length (cm) ≤ 4.85\n", "gini = 0.043\n", "samples = 46\n", "value = [0, 1, 45]\n", "class = virginica\n", "\n", "\n", "2->6\n", "\n", "\n", "\n", "\n", "4\n", "\n", "gini = 0.041\n", "samples = 48\n", "value = [0, 47, 1]\n", "class = versicolor\n", "\n", "\n", "3->4\n", "\n", "\n", "\n", "\n", "5\n", "\n", "gini = 0.444\n", "samples = 6\n", "value = [0, 2, 4]\n", "class = virginica\n", "\n", "\n", "3->5\n", "\n", "\n", "\n", "\n", "7\n", "\n", "gini = 0.444\n", "samples = 3\n", "value = [0, 1, 2]\n", "class = virginica\n", "\n", "\n", "6->7\n", "\n", "\n", "\n", "\n", "8\n", "\n", "gini = 0.0\n", "samples = 43\n", "value = [0, 0, 43]\n", "class = virginica\n", "\n", "\n", "6->8\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dot_data = tree.export_graphviz(clf, out_file=None, \n", " feature_names=iris.feature_names,\n", " class_names=iris.target_names, \n", " filled=True, rounded=True, \n", " special_characters=True)\n", "graph = graphviz.Source(dot_data)\n", "graph" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeClassifier(class_weight=None, criterion='gini', max_depth=4,\n", " max_features=None, max_leaf_nodes=None,\n", " min_impurity_decrease=0.0, min_impurity_split=None,\n", " min_samples_leaf=1, min_samples_split=2,\n", " min_weight_fraction_leaf=0.0, presort=False, random_state=None,\n", " splitter='best')" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf = DecisionTreeClassifier(max_depth=4)\n", "clf.fit(iris.data, iris.target)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "Tree\n", "\n", "\n", "0\n", "\n", "petal width (cm) ≤ 0.8\n", "gini = 0.667\n", "samples = 150\n", "value = [50, 50, 50]\n", "class = setosa\n", "\n", "\n", "1\n", "\n", "gini = 0.0\n", "samples = 50\n", "value = [50, 0, 0]\n", "class = setosa\n", "\n", "\n", "0->1\n", "\n", "\n", "True\n", "\n", "\n", "2\n", "\n", "petal width (cm) ≤ 1.75\n", "gini = 0.5\n", "samples = 100\n", "value = [0, 50, 50]\n", "class = versicolor\n", "\n", "\n", "0->2\n", "\n", "\n", "False\n", "\n", "\n", "3\n", "\n", "petal length (cm) ≤ 4.95\n", "gini = 0.168\n", "samples = 54\n", "value = [0, 49, 5]\n", "class = versicolor\n", "\n", "\n", "2->3\n", "\n", "\n", "\n", "\n", "10\n", "\n", "petal length (cm) ≤ 4.85\n", "gini = 0.043\n", "samples = 46\n", "value = [0, 1, 45]\n", "class = virginica\n", "\n", "\n", "2->10\n", "\n", "\n", "\n", "\n", "4\n", "\n", "petal width (cm) ≤ 1.65\n", "gini = 0.041\n", "samples = 48\n", "value = [0, 47, 1]\n", "class = versicolor\n", "\n", "\n", "3->4\n", "\n", "\n", "\n", "\n", "7\n", "\n", "petal width (cm) ≤ 1.55\n", "gini = 0.444\n", "samples = 6\n", "value = [0, 2, 4]\n", "class = virginica\n", "\n", "\n", "3->7\n", "\n", "\n", "\n", "\n", "5\n", "\n", "gini = 0.0\n", "samples = 47\n", "value = [0, 47, 0]\n", "class = versicolor\n", "\n", "\n", "4->5\n", "\n", "\n", "\n", "\n", "6\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 0, 1]\n", "class = virginica\n", "\n", "\n", "4->6\n", "\n", "\n", "\n", "\n", "8\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [0, 0, 3]\n", "class = virginica\n", "\n", "\n", "7->8\n", "\n", "\n", "\n", "\n", "9\n", "\n", "gini = 0.444\n", "samples = 3\n", "value = [0, 2, 1]\n", "class = versicolor\n", "\n", "\n", "7->9\n", "\n", "\n", "\n", "\n", "11\n", "\n", "sepal length (cm) ≤ 5.95\n", "gini = 0.444\n", "samples = 3\n", "value = [0, 1, 2]\n", "class = virginica\n", "\n", "\n", "10->11\n", "\n", "\n", "\n", "\n", "14\n", "\n", "gini = 0.0\n", "samples = 43\n", "value = [0, 0, 43]\n", "class = virginica\n", "\n", "\n", "10->14\n", "\n", "\n", "\n", "\n", "12\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1, 0]\n", "class = versicolor\n", "\n", "\n", "11->12\n", "\n", "\n", "\n", "\n", "13\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 0, 2]\n", "class = virginica\n", "\n", "\n", "11->13\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dot_data = tree.export_graphviz(clf, out_file=None, \n", " feature_names=iris.feature_names,\n", " class_names=iris.target_names, \n", " filled=True, rounded=True, \n", " special_characters=True)\n", "graph = graphviz.Source(dot_data)\n", "graph" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeClassifier(class_weight=None, criterion='gini', max_depth=4,\n", " max_features=None, max_leaf_nodes=None,\n", " min_impurity_decrease=0.15, min_impurity_split=None,\n", " min_samples_leaf=1, min_samples_split=2,\n", " min_weight_fraction_leaf=0.0, presort=False, random_state=None,\n", " splitter='best')" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf = DecisionTreeClassifier(max_depth=4, min_impurity_decrease=0.15)\n", "clf.fit(iris.data, iris.target)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "Tree\n", "\n", "\n", "0\n", "\n", "petal width (cm) ≤ 0.8\n", "gini = 0.667\n", "samples = 150\n", "value = [50, 50, 50]\n", "class = setosa\n", "\n", "\n", "1\n", "\n", "gini = 0.0\n", "samples = 50\n", "value = [50, 0, 0]\n", "class = setosa\n", "\n", "\n", "0->1\n", "\n", "\n", "True\n", "\n", "\n", "2\n", "\n", "petal width (cm) ≤ 1.75\n", "gini = 0.5\n", "samples = 100\n", "value = [0, 50, 50]\n", "class = versicolor\n", "\n", "\n", "0->2\n", "\n", "\n", "False\n", "\n", "\n", "3\n", "\n", "gini = 0.168\n", "samples = 54\n", "value = [0, 49, 5]\n", "class = versicolor\n", "\n", "\n", "2->3\n", "\n", "\n", "\n", "\n", "4\n", "\n", "gini = 0.043\n", "samples = 46\n", "value = [0, 1, 45]\n", "class = virginica\n", "\n", "\n", "2->4\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dot_data = tree.export_graphviz(clf, out_file=None, \n", " feature_names=iris.feature_names,\n", " class_names=iris.target_names, \n", " filled=True, rounded=True, \n", " special_characters=True)\n", "graph = graphviz.Source(dot_data)\n", "graph" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Стрктура бинарного дерева имеет 5 узлов и следущий вид:\n", "узел=0 проверка: перейти к узлу 1 если sepal length (cm) <= 0.800000011920929 иначе к узлу 2.\n", "\tузел=1 конечный.\n", "\tузел=2 проверка: перейти к узлу 3 если petal length (cm) <= 1.75 иначе к узлу 4.\n", "\t\tузел=3 конечный.\n", "\t\tузел=4 конечный.\n", "\n" ] } ], "source": [ "n_nodes = clf.tree_.node_count\n", "children_left = clf.tree_.children_left\n", "children_right = clf.tree_.children_right\n", "feature = clf.tree_.feature\n", "feature_names = iris.feature_names#clf.tree_.feature\n", "threshold = clf.tree_.threshold\n", "\n", "\n", "# The tree structure can be traversed to compute various properties such\n", "# as the depth of each node and whether or not it is a leaf.\n", "node_depth = np.zeros(shape=n_nodes, dtype=np.int64)\n", "is_leaves = np.zeros(shape=n_nodes, dtype=bool)\n", "stack = [(0, -1)] # seed is the root node id and its parent depth\n", "while len(stack) > 0:\n", " node_id, parent_depth = stack.pop()\n", " node_depth[node_id] = parent_depth + 1\n", "\n", " # If we have a test node\n", " if (children_left[node_id] != children_right[node_id]):\n", " stack.append((children_left[node_id], parent_depth + 1))\n", " stack.append((children_right[node_id], parent_depth + 1))\n", " else:\n", " is_leaves[node_id] = True\n", "\n", "print(\"Стрктура бинарного дерева имеет %s узлов и следущий вид:\"\n", " % n_nodes)\n", "for i in range(n_nodes):\n", " if is_leaves[i]:\n", " print(\"%sузел=%s конечный.\" % (node_depth[i] * \"\\t\", i))\n", " else:\n", " print(\"%sузел=%s проверка: перейти к узлу %s если %s <= %s иначе к узлу %s.\"\n", " % (node_depth[i] * \"\\t\",\n", " i,\n", " children_left[i],\n", " feature_names[i],\n", " threshold[i],\n", " children_right[i],\n", " ))\n", "print()\n" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "sample = 33" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "<1x5 sparse matrix of type ''\n", "\twith 2 stored elements in Compressed Sparse Row format>" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "node_indicator = clf.decision_path( [iris.data[ sample ]] )\n", "node_indicator" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "leave_id = clf.apply( [iris.data[ sample ]] )\n", "leave_id[0]" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([0]), array(['setosa'], dtype=' -2.0)\n" ] } ], "source": [ "# Now, it's possible to get the tests that were used to predict a sample or\n", "# a group of samples. First, let's make it for the sample.\n", "\n", "sample_id = 0\n", "node_index = node_indicator.indices[node_indicator.indptr[0]:\n", " node_indicator.indptr[0 + 1]]\n", "\n", "print('Используемые правила для предсказания %s: ' % sample)\n", "for node_id in node_index:\n", " if leave_id[sample_id] != node_id:\n", " continue\n", "\n", " if (iris.data[sample, feature[node_id]] <= threshold[node_id]):\n", " threshold_sign = \"<=\"\n", " else:\n", " threshold_sign = \">\"\n", "\n", " print(\"узел дерева решений %s : ( фича %s, (= %s) %s %s)\"\n", " % (node_id,\n", " feature[node_id],\n", " iris.data[sample, feature[node_id]],\n", " threshold_sign,\n", " threshold[node_id]))" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.96" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf.score(iris.data, iris.target)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "X_train, X_test, y_train, y_test = train_test_split( iris.data, iris.target, test_size=0.15)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.8466666666666667, 0.15333333333333332)" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_train.shape[0]/iris.data.shape[0], X_test.shape[0]/iris.data.shape[0]" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeClassifier(class_weight=None, criterion='gini', max_depth=4,\n", " max_features=None, max_leaf_nodes=None,\n", " min_impurity_decrease=0.15, min_impurity_split=None,\n", " min_samples_leaf=1, min_samples_split=2,\n", " min_weight_fraction_leaf=0.0, presort=False, random_state=None,\n", " splitter='best')" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf = DecisionTreeClassifier(max_depth=4, min_impurity_decrease=0.15)\n", "clf.fit( X_train, y_train )" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.8695652173913043" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf.score( X_test, y_test )" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.8695652173913043" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf = DecisionTreeClassifier(max_depth=5, min_impurity_decrease=0.01 )\n", "clf.fit( X_train, y_train )\n", "clf.score( X_test, y_test )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Лассо регрессия" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(506, 13)\n" ] } ], "source": [ "from sklearn.datasets import load_boston\n", "boston = load_boston()\n", "print(boston.data.shape)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dict_keys(['data', 'target', 'feature_names', 'DESCR'])" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "boston.keys()" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0123456789101112
00.0063218.02.310.00.5386.57565.24.09001.0296.015.3396.904.98
10.027310.07.070.00.4696.42178.94.96712.0242.017.8396.909.14
20.027290.07.070.00.4697.18561.14.96712.0242.017.8392.834.03
30.032370.02.180.00.4586.99845.86.06223.0222.018.7394.632.94
40.069050.02.180.00.4587.14754.26.06223.0222.018.7396.905.33
50.029850.02.180.00.4586.43058.76.06223.0222.018.7394.125.21
60.0882912.57.870.00.5246.01266.65.56055.0311.015.2395.6012.43
70.1445512.57.870.00.5246.17296.15.95055.0311.015.2396.9019.15
80.2112412.57.870.00.5245.631100.06.08215.0311.015.2386.6329.93
90.1700412.57.870.00.5246.00485.96.59215.0311.015.2386.7117.10
100.2248912.57.870.00.5246.37794.36.34675.0311.015.2392.5220.45
110.1174712.57.870.00.5246.00982.96.22675.0311.015.2396.9013.27
120.0937812.57.870.00.5245.88939.05.45095.0311.015.2390.5015.71
130.629760.08.140.00.5385.94961.84.70754.0307.021.0396.908.26
140.637960.08.140.00.5386.09684.54.46194.0307.021.0380.0210.26
150.627390.08.140.00.5385.83456.54.49864.0307.021.0395.628.47
161.053930.08.140.00.5385.93529.34.49864.0307.021.0386.856.58
170.784200.08.140.00.5385.99081.74.25794.0307.021.0386.7514.67
180.802710.08.140.00.5385.45636.63.79654.0307.021.0288.9911.69
190.725800.08.140.00.5385.72769.53.79654.0307.021.0390.9511.28
201.251790.08.140.00.5385.57098.13.79794.0307.021.0376.5721.02
210.852040.08.140.00.5385.96589.24.01234.0307.021.0392.5313.83
221.232470.08.140.00.5386.14291.73.97694.0307.021.0396.9018.72
230.988430.08.140.00.5385.813100.04.09524.0307.021.0394.5419.88
240.750260.08.140.00.5385.92494.14.39964.0307.021.0394.3316.30
250.840540.08.140.00.5385.59985.74.45464.0307.021.0303.4216.51
260.671910.08.140.00.5385.81390.34.68204.0307.021.0376.8814.81
270.955770.08.140.00.5386.04788.84.45344.0307.021.0306.3817.28
280.772990.08.140.00.5386.49594.44.45474.0307.021.0387.9412.80
291.002450.08.140.00.5386.67487.34.23904.0307.021.0380.2311.98
..........................................
4764.871410.018.100.00.6146.48493.62.305324.0666.020.2396.2118.68
47715.023400.018.100.00.6145.30497.32.100724.0666.020.2349.4824.91
47810.233000.018.100.00.6146.18596.72.170524.0666.020.2379.7018.03
47914.333700.018.100.00.6146.22988.01.951224.0666.020.2383.3213.11
4805.824010.018.100.00.5326.24264.73.424224.0666.020.2396.9010.74
4815.708180.018.100.00.5326.75074.93.331724.0666.020.2393.077.74
4825.731160.018.100.00.5327.06177.03.410624.0666.020.2395.287.01
4832.818380.018.100.00.5325.76240.34.098324.0666.020.2392.9210.42
4842.378570.018.100.00.5835.87141.93.724024.0666.020.2370.7313.34
4853.673670.018.100.00.5836.31251.93.991724.0666.020.2388.6210.58
4865.691750.018.100.00.5836.11479.83.545924.0666.020.2392.6814.98
4874.835670.018.100.00.5835.90553.23.152324.0666.020.2388.2211.45
4880.150860.027.740.00.6095.45492.71.82094.0711.020.1395.0918.06
4890.183370.027.740.00.6095.41498.31.75544.0711.020.1344.0523.97
4900.207460.027.740.00.6095.09398.01.82264.0711.020.1318.4329.68
4910.105740.027.740.00.6095.98398.81.86814.0711.020.1390.1118.07
4920.111320.027.740.00.6095.98383.52.10994.0711.020.1396.9013.35
4930.173310.09.690.00.5855.70754.02.38176.0391.019.2396.9012.01
4940.279570.09.690.00.5855.92642.62.38176.0391.019.2396.9013.59
4950.178990.09.690.00.5855.67028.82.79866.0391.019.2393.2917.60
4960.289600.09.690.00.5855.39072.92.79866.0391.019.2396.9021.14
4970.268380.09.690.00.5855.79470.62.89276.0391.019.2396.9014.10
4980.239120.09.690.00.5856.01965.32.40916.0391.019.2396.9012.92
4990.177830.09.690.00.5855.56973.52.39996.0391.019.2395.7715.10
5000.224380.09.690.00.5856.02779.72.49826.0391.019.2396.9014.33
5010.062630.011.930.00.5736.59369.12.47861.0273.021.0391.999.67
5020.045270.011.930.00.5736.12076.72.28751.0273.021.0396.909.08
5030.060760.011.930.00.5736.97691.02.16751.0273.021.0396.905.64
5040.109590.011.930.00.5736.79489.32.38891.0273.021.0393.456.48
5050.047410.011.930.00.5736.03080.82.50501.0273.021.0396.907.88
\n", "

506 rows × 13 columns

\n", "
" ], "text/plain": [ " 0 1 2 3 4 5 6 7 8 9 \\\n", "0 0.00632 18.0 2.31 0.0 0.538 6.575 65.2 4.0900 1.0 296.0 \n", "1 0.02731 0.0 7.07 0.0 0.469 6.421 78.9 4.9671 2.0 242.0 \n", "2 0.02729 0.0 7.07 0.0 0.469 7.185 61.1 4.9671 2.0 242.0 \n", "3 0.03237 0.0 2.18 0.0 0.458 6.998 45.8 6.0622 3.0 222.0 \n", "4 0.06905 0.0 2.18 0.0 0.458 7.147 54.2 6.0622 3.0 222.0 \n", "5 0.02985 0.0 2.18 0.0 0.458 6.430 58.7 6.0622 3.0 222.0 \n", "6 0.08829 12.5 7.87 0.0 0.524 6.012 66.6 5.5605 5.0 311.0 \n", "7 0.14455 12.5 7.87 0.0 0.524 6.172 96.1 5.9505 5.0 311.0 \n", "8 0.21124 12.5 7.87 0.0 0.524 5.631 100.0 6.0821 5.0 311.0 \n", "9 0.17004 12.5 7.87 0.0 0.524 6.004 85.9 6.5921 5.0 311.0 \n", "10 0.22489 12.5 7.87 0.0 0.524 6.377 94.3 6.3467 5.0 311.0 \n", "11 0.11747 12.5 7.87 0.0 0.524 6.009 82.9 6.2267 5.0 311.0 \n", "12 0.09378 12.5 7.87 0.0 0.524 5.889 39.0 5.4509 5.0 311.0 \n", "13 0.62976 0.0 8.14 0.0 0.538 5.949 61.8 4.7075 4.0 307.0 \n", "14 0.63796 0.0 8.14 0.0 0.538 6.096 84.5 4.4619 4.0 307.0 \n", "15 0.62739 0.0 8.14 0.0 0.538 5.834 56.5 4.4986 4.0 307.0 \n", "16 1.05393 0.0 8.14 0.0 0.538 5.935 29.3 4.4986 4.0 307.0 \n", "17 0.78420 0.0 8.14 0.0 0.538 5.990 81.7 4.2579 4.0 307.0 \n", "18 0.80271 0.0 8.14 0.0 0.538 5.456 36.6 3.7965 4.0 307.0 \n", "19 0.72580 0.0 8.14 0.0 0.538 5.727 69.5 3.7965 4.0 307.0 \n", "20 1.25179 0.0 8.14 0.0 0.538 5.570 98.1 3.7979 4.0 307.0 \n", "21 0.85204 0.0 8.14 0.0 0.538 5.965 89.2 4.0123 4.0 307.0 \n", "22 1.23247 0.0 8.14 0.0 0.538 6.142 91.7 3.9769 4.0 307.0 \n", "23 0.98843 0.0 8.14 0.0 0.538 5.813 100.0 4.0952 4.0 307.0 \n", "24 0.75026 0.0 8.14 0.0 0.538 5.924 94.1 4.3996 4.0 307.0 \n", "25 0.84054 0.0 8.14 0.0 0.538 5.599 85.7 4.4546 4.0 307.0 \n", "26 0.67191 0.0 8.14 0.0 0.538 5.813 90.3 4.6820 4.0 307.0 \n", "27 0.95577 0.0 8.14 0.0 0.538 6.047 88.8 4.4534 4.0 307.0 \n", "28 0.77299 0.0 8.14 0.0 0.538 6.495 94.4 4.4547 4.0 307.0 \n", "29 1.00245 0.0 8.14 0.0 0.538 6.674 87.3 4.2390 4.0 307.0 \n", ".. ... ... ... ... ... ... ... ... ... ... \n", "476 4.87141 0.0 18.10 0.0 0.614 6.484 93.6 2.3053 24.0 666.0 \n", "477 15.02340 0.0 18.10 0.0 0.614 5.304 97.3 2.1007 24.0 666.0 \n", "478 10.23300 0.0 18.10 0.0 0.614 6.185 96.7 2.1705 24.0 666.0 \n", "479 14.33370 0.0 18.10 0.0 0.614 6.229 88.0 1.9512 24.0 666.0 \n", "480 5.82401 0.0 18.10 0.0 0.532 6.242 64.7 3.4242 24.0 666.0 \n", "481 5.70818 0.0 18.10 0.0 0.532 6.750 74.9 3.3317 24.0 666.0 \n", "482 5.73116 0.0 18.10 0.0 0.532 7.061 77.0 3.4106 24.0 666.0 \n", "483 2.81838 0.0 18.10 0.0 0.532 5.762 40.3 4.0983 24.0 666.0 \n", "484 2.37857 0.0 18.10 0.0 0.583 5.871 41.9 3.7240 24.0 666.0 \n", "485 3.67367 0.0 18.10 0.0 0.583 6.312 51.9 3.9917 24.0 666.0 \n", "486 5.69175 0.0 18.10 0.0 0.583 6.114 79.8 3.5459 24.0 666.0 \n", "487 4.83567 0.0 18.10 0.0 0.583 5.905 53.2 3.1523 24.0 666.0 \n", "488 0.15086 0.0 27.74 0.0 0.609 5.454 92.7 1.8209 4.0 711.0 \n", "489 0.18337 0.0 27.74 0.0 0.609 5.414 98.3 1.7554 4.0 711.0 \n", "490 0.20746 0.0 27.74 0.0 0.609 5.093 98.0 1.8226 4.0 711.0 \n", "491 0.10574 0.0 27.74 0.0 0.609 5.983 98.8 1.8681 4.0 711.0 \n", "492 0.11132 0.0 27.74 0.0 0.609 5.983 83.5 2.1099 4.0 711.0 \n", "493 0.17331 0.0 9.69 0.0 0.585 5.707 54.0 2.3817 6.0 391.0 \n", "494 0.27957 0.0 9.69 0.0 0.585 5.926 42.6 2.3817 6.0 391.0 \n", "495 0.17899 0.0 9.69 0.0 0.585 5.670 28.8 2.7986 6.0 391.0 \n", "496 0.28960 0.0 9.69 0.0 0.585 5.390 72.9 2.7986 6.0 391.0 \n", "497 0.26838 0.0 9.69 0.0 0.585 5.794 70.6 2.8927 6.0 391.0 \n", "498 0.23912 0.0 9.69 0.0 0.585 6.019 65.3 2.4091 6.0 391.0 \n", "499 0.17783 0.0 9.69 0.0 0.585 5.569 73.5 2.3999 6.0 391.0 \n", "500 0.22438 0.0 9.69 0.0 0.585 6.027 79.7 2.4982 6.0 391.0 \n", "501 0.06263 0.0 11.93 0.0 0.573 6.593 69.1 2.4786 1.0 273.0 \n", "502 0.04527 0.0 11.93 0.0 0.573 6.120 76.7 2.2875 1.0 273.0 \n", "503 0.06076 0.0 11.93 0.0 0.573 6.976 91.0 2.1675 1.0 273.0 \n", "504 0.10959 0.0 11.93 0.0 0.573 6.794 89.3 2.3889 1.0 273.0 \n", "505 0.04741 0.0 11.93 0.0 0.573 6.030 80.8 2.5050 1.0 273.0 \n", "\n", " 10 11 12 \n", "0 15.3 396.90 4.98 \n", "1 17.8 396.90 9.14 \n", "2 17.8 392.83 4.03 \n", "3 18.7 394.63 2.94 \n", "4 18.7 396.90 5.33 \n", "5 18.7 394.12 5.21 \n", "6 15.2 395.60 12.43 \n", "7 15.2 396.90 19.15 \n", "8 15.2 386.63 29.93 \n", "9 15.2 386.71 17.10 \n", "10 15.2 392.52 20.45 \n", "11 15.2 396.90 13.27 \n", "12 15.2 390.50 15.71 \n", "13 21.0 396.90 8.26 \n", "14 21.0 380.02 10.26 \n", "15 21.0 395.62 8.47 \n", "16 21.0 386.85 6.58 \n", "17 21.0 386.75 14.67 \n", "18 21.0 288.99 11.69 \n", "19 21.0 390.95 11.28 \n", "20 21.0 376.57 21.02 \n", "21 21.0 392.53 13.83 \n", "22 21.0 396.90 18.72 \n", "23 21.0 394.54 19.88 \n", "24 21.0 394.33 16.30 \n", "25 21.0 303.42 16.51 \n", "26 21.0 376.88 14.81 \n", "27 21.0 306.38 17.28 \n", "28 21.0 387.94 12.80 \n", "29 21.0 380.23 11.98 \n", ".. ... ... ... \n", "476 20.2 396.21 18.68 \n", "477 20.2 349.48 24.91 \n", "478 20.2 379.70 18.03 \n", "479 20.2 383.32 13.11 \n", "480 20.2 396.90 10.74 \n", "481 20.2 393.07 7.74 \n", "482 20.2 395.28 7.01 \n", "483 20.2 392.92 10.42 \n", "484 20.2 370.73 13.34 \n", "485 20.2 388.62 10.58 \n", "486 20.2 392.68 14.98 \n", "487 20.2 388.22 11.45 \n", "488 20.1 395.09 18.06 \n", "489 20.1 344.05 23.97 \n", "490 20.1 318.43 29.68 \n", "491 20.1 390.11 18.07 \n", "492 20.1 396.90 13.35 \n", "493 19.2 396.90 12.01 \n", "494 19.2 396.90 13.59 \n", "495 19.2 393.29 17.60 \n", "496 19.2 396.90 21.14 \n", "497 19.2 396.90 14.10 \n", "498 19.2 396.90 12.92 \n", "499 19.2 395.77 15.10 \n", "500 19.2 396.90 14.33 \n", "501 21.0 391.99 9.67 \n", "502 21.0 396.90 9.08 \n", "503 21.0 396.90 5.64 \n", "504 21.0 393.45 6.48 \n", "505 21.0 396.90 7.88 \n", "\n", "[506 rows x 13 columns]" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "df = pd.DataFrame(boston['data'])\n", "df" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CRIMZNINDUSCHASNOXRMAGEDISRADTAXPTRATIOBLSTAT
00.0063218.02.310.00.5386.57565.24.09001.0296.015.3396.904.98
10.027310.07.070.00.4696.42178.94.96712.0242.017.8396.909.14
20.027290.07.070.00.4697.18561.14.96712.0242.017.8392.834.03
30.032370.02.180.00.4586.99845.86.06223.0222.018.7394.632.94
40.069050.02.180.00.4587.14754.26.06223.0222.018.7396.905.33
50.029850.02.180.00.4586.43058.76.06223.0222.018.7394.125.21
60.0882912.57.870.00.5246.01266.65.56055.0311.015.2395.6012.43
70.1445512.57.870.00.5246.17296.15.95055.0311.015.2396.9019.15
80.2112412.57.870.00.5245.631100.06.08215.0311.015.2386.6329.93
90.1700412.57.870.00.5246.00485.96.59215.0311.015.2386.7117.10
100.2248912.57.870.00.5246.37794.36.34675.0311.015.2392.5220.45
110.1174712.57.870.00.5246.00982.96.22675.0311.015.2396.9013.27
120.0937812.57.870.00.5245.88939.05.45095.0311.015.2390.5015.71
130.629760.08.140.00.5385.94961.84.70754.0307.021.0396.908.26
140.637960.08.140.00.5386.09684.54.46194.0307.021.0380.0210.26
150.627390.08.140.00.5385.83456.54.49864.0307.021.0395.628.47
161.053930.08.140.00.5385.93529.34.49864.0307.021.0386.856.58
170.784200.08.140.00.5385.99081.74.25794.0307.021.0386.7514.67
180.802710.08.140.00.5385.45636.63.79654.0307.021.0288.9911.69
190.725800.08.140.00.5385.72769.53.79654.0307.021.0390.9511.28
201.251790.08.140.00.5385.57098.13.79794.0307.021.0376.5721.02
210.852040.08.140.00.5385.96589.24.01234.0307.021.0392.5313.83
221.232470.08.140.00.5386.14291.73.97694.0307.021.0396.9018.72
230.988430.08.140.00.5385.813100.04.09524.0307.021.0394.5419.88
240.750260.08.140.00.5385.92494.14.39964.0307.021.0394.3316.30
250.840540.08.140.00.5385.59985.74.45464.0307.021.0303.4216.51
260.671910.08.140.00.5385.81390.34.68204.0307.021.0376.8814.81
270.955770.08.140.00.5386.04788.84.45344.0307.021.0306.3817.28
280.772990.08.140.00.5386.49594.44.45474.0307.021.0387.9412.80
291.002450.08.140.00.5386.67487.34.23904.0307.021.0380.2311.98
..........................................
4764.871410.018.100.00.6146.48493.62.305324.0666.020.2396.2118.68
47715.023400.018.100.00.6145.30497.32.100724.0666.020.2349.4824.91
47810.233000.018.100.00.6146.18596.72.170524.0666.020.2379.7018.03
47914.333700.018.100.00.6146.22988.01.951224.0666.020.2383.3213.11
4805.824010.018.100.00.5326.24264.73.424224.0666.020.2396.9010.74
4815.708180.018.100.00.5326.75074.93.331724.0666.020.2393.077.74
4825.731160.018.100.00.5327.06177.03.410624.0666.020.2395.287.01
4832.818380.018.100.00.5325.76240.34.098324.0666.020.2392.9210.42
4842.378570.018.100.00.5835.87141.93.724024.0666.020.2370.7313.34
4853.673670.018.100.00.5836.31251.93.991724.0666.020.2388.6210.58
4865.691750.018.100.00.5836.11479.83.545924.0666.020.2392.6814.98
4874.835670.018.100.00.5835.90553.23.152324.0666.020.2388.2211.45
4880.150860.027.740.00.6095.45492.71.82094.0711.020.1395.0918.06
4890.183370.027.740.00.6095.41498.31.75544.0711.020.1344.0523.97
4900.207460.027.740.00.6095.09398.01.82264.0711.020.1318.4329.68
4910.105740.027.740.00.6095.98398.81.86814.0711.020.1390.1118.07
4920.111320.027.740.00.6095.98383.52.10994.0711.020.1396.9013.35
4930.173310.09.690.00.5855.70754.02.38176.0391.019.2396.9012.01
4940.279570.09.690.00.5855.92642.62.38176.0391.019.2396.9013.59
4950.178990.09.690.00.5855.67028.82.79866.0391.019.2393.2917.60
4960.289600.09.690.00.5855.39072.92.79866.0391.019.2396.9021.14
4970.268380.09.690.00.5855.79470.62.89276.0391.019.2396.9014.10
4980.239120.09.690.00.5856.01965.32.40916.0391.019.2396.9012.92
4990.177830.09.690.00.5855.56973.52.39996.0391.019.2395.7715.10
5000.224380.09.690.00.5856.02779.72.49826.0391.019.2396.9014.33
5010.062630.011.930.00.5736.59369.12.47861.0273.021.0391.999.67
5020.045270.011.930.00.5736.12076.72.28751.0273.021.0396.909.08
5030.060760.011.930.00.5736.97691.02.16751.0273.021.0396.905.64
5040.109590.011.930.00.5736.79489.32.38891.0273.021.0393.456.48
5050.047410.011.930.00.5736.03080.82.50501.0273.021.0396.907.88
\n", "

506 rows × 13 columns

\n", "
" ], "text/plain": [ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX \\\n", "0 0.00632 18.0 2.31 0.0 0.538 6.575 65.2 4.0900 1.0 296.0 \n", "1 0.02731 0.0 7.07 0.0 0.469 6.421 78.9 4.9671 2.0 242.0 \n", "2 0.02729 0.0 7.07 0.0 0.469 7.185 61.1 4.9671 2.0 242.0 \n", "3 0.03237 0.0 2.18 0.0 0.458 6.998 45.8 6.0622 3.0 222.0 \n", "4 0.06905 0.0 2.18 0.0 0.458 7.147 54.2 6.0622 3.0 222.0 \n", "5 0.02985 0.0 2.18 0.0 0.458 6.430 58.7 6.0622 3.0 222.0 \n", "6 0.08829 12.5 7.87 0.0 0.524 6.012 66.6 5.5605 5.0 311.0 \n", "7 0.14455 12.5 7.87 0.0 0.524 6.172 96.1 5.9505 5.0 311.0 \n", "8 0.21124 12.5 7.87 0.0 0.524 5.631 100.0 6.0821 5.0 311.0 \n", "9 0.17004 12.5 7.87 0.0 0.524 6.004 85.9 6.5921 5.0 311.0 \n", "10 0.22489 12.5 7.87 0.0 0.524 6.377 94.3 6.3467 5.0 311.0 \n", "11 0.11747 12.5 7.87 0.0 0.524 6.009 82.9 6.2267 5.0 311.0 \n", "12 0.09378 12.5 7.87 0.0 0.524 5.889 39.0 5.4509 5.0 311.0 \n", "13 0.62976 0.0 8.14 0.0 0.538 5.949 61.8 4.7075 4.0 307.0 \n", "14 0.63796 0.0 8.14 0.0 0.538 6.096 84.5 4.4619 4.0 307.0 \n", "15 0.62739 0.0 8.14 0.0 0.538 5.834 56.5 4.4986 4.0 307.0 \n", "16 1.05393 0.0 8.14 0.0 0.538 5.935 29.3 4.4986 4.0 307.0 \n", "17 0.78420 0.0 8.14 0.0 0.538 5.990 81.7 4.2579 4.0 307.0 \n", "18 0.80271 0.0 8.14 0.0 0.538 5.456 36.6 3.7965 4.0 307.0 \n", "19 0.72580 0.0 8.14 0.0 0.538 5.727 69.5 3.7965 4.0 307.0 \n", "20 1.25179 0.0 8.14 0.0 0.538 5.570 98.1 3.7979 4.0 307.0 \n", "21 0.85204 0.0 8.14 0.0 0.538 5.965 89.2 4.0123 4.0 307.0 \n", "22 1.23247 0.0 8.14 0.0 0.538 6.142 91.7 3.9769 4.0 307.0 \n", "23 0.98843 0.0 8.14 0.0 0.538 5.813 100.0 4.0952 4.0 307.0 \n", "24 0.75026 0.0 8.14 0.0 0.538 5.924 94.1 4.3996 4.0 307.0 \n", "25 0.84054 0.0 8.14 0.0 0.538 5.599 85.7 4.4546 4.0 307.0 \n", "26 0.67191 0.0 8.14 0.0 0.538 5.813 90.3 4.6820 4.0 307.0 \n", "27 0.95577 0.0 8.14 0.0 0.538 6.047 88.8 4.4534 4.0 307.0 \n", "28 0.77299 0.0 8.14 0.0 0.538 6.495 94.4 4.4547 4.0 307.0 \n", "29 1.00245 0.0 8.14 0.0 0.538 6.674 87.3 4.2390 4.0 307.0 \n", ".. ... ... ... ... ... ... ... ... ... ... \n", "476 4.87141 0.0 18.10 0.0 0.614 6.484 93.6 2.3053 24.0 666.0 \n", "477 15.02340 0.0 18.10 0.0 0.614 5.304 97.3 2.1007 24.0 666.0 \n", "478 10.23300 0.0 18.10 0.0 0.614 6.185 96.7 2.1705 24.0 666.0 \n", "479 14.33370 0.0 18.10 0.0 0.614 6.229 88.0 1.9512 24.0 666.0 \n", "480 5.82401 0.0 18.10 0.0 0.532 6.242 64.7 3.4242 24.0 666.0 \n", "481 5.70818 0.0 18.10 0.0 0.532 6.750 74.9 3.3317 24.0 666.0 \n", "482 5.73116 0.0 18.10 0.0 0.532 7.061 77.0 3.4106 24.0 666.0 \n", "483 2.81838 0.0 18.10 0.0 0.532 5.762 40.3 4.0983 24.0 666.0 \n", "484 2.37857 0.0 18.10 0.0 0.583 5.871 41.9 3.7240 24.0 666.0 \n", "485 3.67367 0.0 18.10 0.0 0.583 6.312 51.9 3.9917 24.0 666.0 \n", "486 5.69175 0.0 18.10 0.0 0.583 6.114 79.8 3.5459 24.0 666.0 \n", "487 4.83567 0.0 18.10 0.0 0.583 5.905 53.2 3.1523 24.0 666.0 \n", "488 0.15086 0.0 27.74 0.0 0.609 5.454 92.7 1.8209 4.0 711.0 \n", "489 0.18337 0.0 27.74 0.0 0.609 5.414 98.3 1.7554 4.0 711.0 \n", "490 0.20746 0.0 27.74 0.0 0.609 5.093 98.0 1.8226 4.0 711.0 \n", "491 0.10574 0.0 27.74 0.0 0.609 5.983 98.8 1.8681 4.0 711.0 \n", "492 0.11132 0.0 27.74 0.0 0.609 5.983 83.5 2.1099 4.0 711.0 \n", "493 0.17331 0.0 9.69 0.0 0.585 5.707 54.0 2.3817 6.0 391.0 \n", "494 0.27957 0.0 9.69 0.0 0.585 5.926 42.6 2.3817 6.0 391.0 \n", "495 0.17899 0.0 9.69 0.0 0.585 5.670 28.8 2.7986 6.0 391.0 \n", "496 0.28960 0.0 9.69 0.0 0.585 5.390 72.9 2.7986 6.0 391.0 \n", "497 0.26838 0.0 9.69 0.0 0.585 5.794 70.6 2.8927 6.0 391.0 \n", "498 0.23912 0.0 9.69 0.0 0.585 6.019 65.3 2.4091 6.0 391.0 \n", "499 0.17783 0.0 9.69 0.0 0.585 5.569 73.5 2.3999 6.0 391.0 \n", "500 0.22438 0.0 9.69 0.0 0.585 6.027 79.7 2.4982 6.0 391.0 \n", "501 0.06263 0.0 11.93 0.0 0.573 6.593 69.1 2.4786 1.0 273.0 \n", "502 0.04527 0.0 11.93 0.0 0.573 6.120 76.7 2.2875 1.0 273.0 \n", "503 0.06076 0.0 11.93 0.0 0.573 6.976 91.0 2.1675 1.0 273.0 \n", "504 0.10959 0.0 11.93 0.0 0.573 6.794 89.3 2.3889 1.0 273.0 \n", "505 0.04741 0.0 11.93 0.0 0.573 6.030 80.8 2.5050 1.0 273.0 \n", "\n", " PTRATIO B LSTAT \n", "0 15.3 396.90 4.98 \n", "1 17.8 396.90 9.14 \n", "2 17.8 392.83 4.03 \n", "3 18.7 394.63 2.94 \n", "4 18.7 396.90 5.33 \n", "5 18.7 394.12 5.21 \n", "6 15.2 395.60 12.43 \n", "7 15.2 396.90 19.15 \n", "8 15.2 386.63 29.93 \n", "9 15.2 386.71 17.10 \n", "10 15.2 392.52 20.45 \n", "11 15.2 396.90 13.27 \n", "12 15.2 390.50 15.71 \n", "13 21.0 396.90 8.26 \n", "14 21.0 380.02 10.26 \n", "15 21.0 395.62 8.47 \n", "16 21.0 386.85 6.58 \n", "17 21.0 386.75 14.67 \n", "18 21.0 288.99 11.69 \n", "19 21.0 390.95 11.28 \n", "20 21.0 376.57 21.02 \n", "21 21.0 392.53 13.83 \n", "22 21.0 396.90 18.72 \n", "23 21.0 394.54 19.88 \n", "24 21.0 394.33 16.30 \n", "25 21.0 303.42 16.51 \n", "26 21.0 376.88 14.81 \n", "27 21.0 306.38 17.28 \n", "28 21.0 387.94 12.80 \n", "29 21.0 380.23 11.98 \n", ".. ... ... ... \n", "476 20.2 396.21 18.68 \n", "477 20.2 349.48 24.91 \n", "478 20.2 379.70 18.03 \n", "479 20.2 383.32 13.11 \n", "480 20.2 396.90 10.74 \n", "481 20.2 393.07 7.74 \n", "482 20.2 395.28 7.01 \n", "483 20.2 392.92 10.42 \n", "484 20.2 370.73 13.34 \n", "485 20.2 388.62 10.58 \n", "486 20.2 392.68 14.98 \n", "487 20.2 388.22 11.45 \n", "488 20.1 395.09 18.06 \n", "489 20.1 344.05 23.97 \n", "490 20.1 318.43 29.68 \n", "491 20.1 390.11 18.07 \n", "492 20.1 396.90 13.35 \n", "493 19.2 396.90 12.01 \n", "494 19.2 396.90 13.59 \n", "495 19.2 393.29 17.60 \n", "496 19.2 396.90 21.14 \n", "497 19.2 396.90 14.10 \n", "498 19.2 396.90 12.92 \n", "499 19.2 395.77 15.10 \n", "500 19.2 396.90 14.33 \n", "501 21.0 391.99 9.67 \n", "502 21.0 396.90 9.08 \n", "503 21.0 396.90 5.64 \n", "504 21.0 393.45 6.48 \n", "505 21.0 396.90 7.88 \n", "\n", "[506 rows x 13 columns]" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.columns = boston['feature_names']\n", "df" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "array([24. , 21.6, 34.7, 33.4, 36.2, 28.7, 22.9, 27.1, 16.5, 18.9, 15. ,\n", " 18.9, 21.7, 20.4, 18.2, 19.9, 23.1, 17.5, 20.2, 18.2, 13.6, 19.6,\n", " 15.2, 14.5, 15.6, 13.9, 16.6, 14.8, 18.4, 21. , 12.7, 14.5, 13.2,\n", " 13.1, 13.5, 18.9, 20. , 21. , 24.7, 30.8, 34.9, 26.6, 25.3, 24.7,\n", " 21.2, 19.3, 20. , 16.6, 14.4, 19.4, 19.7, 20.5, 25. , 23.4, 18.9,\n", " 35.4, 24.7, 31.6, 23.3, 19.6, 18.7, 16. , 22.2, 25. , 33. , 23.5,\n", " 19.4, 22. , 17.4, 20.9, 24.2, 21.7, 22.8, 23.4, 24.1, 21.4, 20. ,\n", " 20.8, 21.2, 20.3, 28. , 23.9, 24.8, 22.9, 23.9, 26.6, 22.5, 22.2,\n", " 23.6, 28.7, 22.6, 22. , 22.9, 25. , 20.6, 28.4, 21.4, 38.7, 43.8,\n", " 33.2, 27.5, 26.5, 18.6, 19.3, 20.1, 19.5, 19.5, 20.4, 19.8, 19.4,\n", " 21.7, 22.8, 18.8, 18.7, 18.5, 18.3, 21.2, 19.2, 20.4, 19.3, 22. ,\n", " 20.3, 20.5, 17.3, 18.8, 21.4, 15.7, 16.2, 18. , 14.3, 19.2, 19.6,\n", " 23. , 18.4, 15.6, 18.1, 17.4, 17.1, 13.3, 17.8, 14. , 14.4, 13.4,\n", " 15.6, 11.8, 13.8, 15.6, 14.6, 17.8, 15.4, 21.5, 19.6, 15.3, 19.4,\n", " 17. , 15.6, 13.1, 41.3, 24.3, 23.3, 27. , 50. , 50. , 50. , 22.7,\n", " 25. , 50. , 23.8, 23.8, 22.3, 17.4, 19.1, 23.1, 23.6, 22.6, 29.4,\n", " 23.2, 24.6, 29.9, 37.2, 39.8, 36.2, 37.9, 32.5, 26.4, 29.6, 50. ,\n", " 32. , 29.8, 34.9, 37. , 30.5, 36.4, 31.1, 29.1, 50. , 33.3, 30.3,\n", " 34.6, 34.9, 32.9, 24.1, 42.3, 48.5, 50. , 22.6, 24.4, 22.5, 24.4,\n", " 20. , 21.7, 19.3, 22.4, 28.1, 23.7, 25. , 23.3, 28.7, 21.5, 23. ,\n", " 26.7, 21.7, 27.5, 30.1, 44.8, 50. , 37.6, 31.6, 46.7, 31.5, 24.3,\n", " 31.7, 41.7, 48.3, 29. , 24. , 25.1, 31.5, 23.7, 23.3, 22. , 20.1,\n", " 22.2, 23.7, 17.6, 18.5, 24.3, 20.5, 24.5, 26.2, 24.4, 24.8, 29.6,\n", " 42.8, 21.9, 20.9, 44. , 50. , 36. , 30.1, 33.8, 43.1, 48.8, 31. ,\n", " 36.5, 22.8, 30.7, 50. , 43.5, 20.7, 21.1, 25.2, 24.4, 35.2, 32.4,\n", " 32. , 33.2, 33.1, 29.1, 35.1, 45.4, 35.4, 46. , 50. , 32.2, 22. ,\n", " 20.1, 23.2, 22.3, 24.8, 28.5, 37.3, 27.9, 23.9, 21.7, 28.6, 27.1,\n", " 20.3, 22.5, 29. , 24.8, 22. , 26.4, 33.1, 36.1, 28.4, 33.4, 28.2,\n", " 22.8, 20.3, 16.1, 22.1, 19.4, 21.6, 23.8, 16.2, 17.8, 19.8, 23.1,\n", " 21. , 23.8, 23.1, 20.4, 18.5, 25. , 24.6, 23. , 22.2, 19.3, 22.6,\n", " 19.8, 17.1, 19.4, 22.2, 20.7, 21.1, 19.5, 18.5, 20.6, 19. , 18.7,\n", " 32.7, 16.5, 23.9, 31.2, 17.5, 17.2, 23.1, 24.5, 26.6, 22.9, 24.1,\n", " 18.6, 30.1, 18.2, 20.6, 17.8, 21.7, 22.7, 22.6, 25. , 19.9, 20.8,\n", " 16.8, 21.9, 27.5, 21.9, 23.1, 50. , 50. , 50. , 50. , 50. , 13.8,\n", " 13.8, 15. , 13.9, 13.3, 13.1, 10.2, 10.4, 10.9, 11.3, 12.3, 8.8,\n", " 7.2, 10.5, 7.4, 10.2, 11.5, 15.1, 23.2, 9.7, 13.8, 12.7, 13.1,\n", " 12.5, 8.5, 5. , 6.3, 5.6, 7.2, 12.1, 8.3, 8.5, 5. , 11.9,\n", " 27.9, 17.2, 27.5, 15. , 17.2, 17.9, 16.3, 7. , 7.2, 7.5, 10.4,\n", " 8.8, 8.4, 16.7, 14.2, 20.8, 13.4, 11.7, 8.3, 10.2, 10.9, 11. ,\n", " 9.5, 14.5, 14.1, 16.1, 14.3, 11.7, 13.4, 9.6, 8.7, 8.4, 12.8,\n", " 10.5, 17.1, 18.4, 15.4, 10.8, 11.8, 14.9, 12.6, 14.1, 13. , 13.4,\n", " 15.2, 16.1, 17.8, 14.9, 14.1, 12.7, 13.5, 14.9, 20. , 16.4, 17.7,\n", " 19.5, 20.2, 21.4, 19.9, 19. , 19.1, 19.1, 20.1, 19.9, 19.6, 23.2,\n", " 29.8, 13.8, 13.3, 16.7, 12. , 14.6, 21.4, 23. , 23.7, 25. , 21.8,\n", " 20.6, 21.2, 19.1, 20.6, 15.2, 7. , 8.1, 13.6, 20.1, 21.8, 24.5,\n", " 23.1, 19.7, 18.3, 21.2, 17.5, 16.8, 22.4, 20.6, 23.9, 22. , 11.9])" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "boston['target']" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Цена
024.0
121.6
234.7
333.4
436.2
528.7
622.9
727.1
816.5
918.9
1015.0
1118.9
1221.7
1320.4
1418.2
1519.9
1623.1
1717.5
1820.2
1918.2
2013.6
2119.6
2215.2
2314.5
2415.6
2513.9
2616.6
2714.8
2818.4
2921.0
......
47616.7
47712.0
47814.6
47921.4
48023.0
48123.7
48225.0
48321.8
48420.6
48521.2
48619.1
48720.6
48815.2
4897.0
4908.1
49113.6
49220.1
49321.8
49424.5
49523.1
49619.7
49718.3
49821.2
49917.5
50016.8
50122.4
50220.6
50323.9
50422.0
50511.9
\n", "

506 rows × 1 columns

\n", "
" ], "text/plain": [ " Цена\n", "0 24.0\n", "1 21.6\n", "2 34.7\n", "3 33.4\n", "4 36.2\n", "5 28.7\n", "6 22.9\n", "7 27.1\n", "8 16.5\n", "9 18.9\n", "10 15.0\n", "11 18.9\n", "12 21.7\n", "13 20.4\n", "14 18.2\n", "15 19.9\n", "16 23.1\n", "17 17.5\n", "18 20.2\n", "19 18.2\n", "20 13.6\n", "21 19.6\n", "22 15.2\n", "23 14.5\n", "24 15.6\n", "25 13.9\n", "26 16.6\n", "27 14.8\n", "28 18.4\n", "29 21.0\n", ".. ...\n", "476 16.7\n", "477 12.0\n", "478 14.6\n", "479 21.4\n", "480 23.0\n", "481 23.7\n", "482 25.0\n", "483 21.8\n", "484 20.6\n", "485 21.2\n", "486 19.1\n", "487 20.6\n", "488 15.2\n", "489 7.0\n", "490 8.1\n", "491 13.6\n", "492 20.1\n", "493 21.8\n", "494 24.5\n", "495 23.1\n", "496 19.7\n", "497 18.3\n", "498 21.2\n", "499 17.5\n", "500 16.8\n", "501 22.4\n", "502 20.6\n", "503 23.9\n", "504 22.0\n", "505 11.9\n", "\n", "[506 rows x 1 columns]" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "targ = pd.DataFrame( boston.target )\n", "targ.columns = [\"Цена\"]\n", "targ" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "21.6" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "targ[\"Цена\"][1]" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
CRIMZNINDUSCHASNOXRMAGEDISRADTAXPTRATIOBLSTATЦена
00.0063218.02.310.00.5386.57565.24.09001.0296.015.3396.904.9824.0
10.027310.07.070.00.4696.42178.94.96712.0242.017.8396.909.1421.6
20.027290.07.070.00.4697.18561.14.96712.0242.017.8392.834.0334.7
30.032370.02.180.00.4586.99845.86.06223.0222.018.7394.632.9433.4
40.069050.02.180.00.4587.14754.26.06223.0222.018.7396.905.3336.2
50.029850.02.180.00.4586.43058.76.06223.0222.018.7394.125.2128.7
60.0882912.57.870.00.5246.01266.65.56055.0311.015.2395.6012.4322.9
70.1445512.57.870.00.5246.17296.15.95055.0311.015.2396.9019.1527.1
80.2112412.57.870.00.5245.631100.06.08215.0311.015.2386.6329.9316.5
90.1700412.57.870.00.5246.00485.96.59215.0311.015.2386.7117.1018.9
100.2248912.57.870.00.5246.37794.36.34675.0311.015.2392.5220.4515.0
110.1174712.57.870.00.5246.00982.96.22675.0311.015.2396.9013.2718.9
120.0937812.57.870.00.5245.88939.05.45095.0311.015.2390.5015.7121.7
130.629760.08.140.00.5385.94961.84.70754.0307.021.0396.908.2620.4
140.637960.08.140.00.5386.09684.54.46194.0307.021.0380.0210.2618.2
150.627390.08.140.00.5385.83456.54.49864.0307.021.0395.628.4719.9
161.053930.08.140.00.5385.93529.34.49864.0307.021.0386.856.5823.1
170.784200.08.140.00.5385.99081.74.25794.0307.021.0386.7514.6717.5
180.802710.08.140.00.5385.45636.63.79654.0307.021.0288.9911.6920.2
190.725800.08.140.00.5385.72769.53.79654.0307.021.0390.9511.2818.2
201.251790.08.140.00.5385.57098.13.79794.0307.021.0376.5721.0213.6
210.852040.08.140.00.5385.96589.24.01234.0307.021.0392.5313.8319.6
221.232470.08.140.00.5386.14291.73.97694.0307.021.0396.9018.7215.2
230.988430.08.140.00.5385.813100.04.09524.0307.021.0394.5419.8814.5
240.750260.08.140.00.5385.92494.14.39964.0307.021.0394.3316.3015.6
250.840540.08.140.00.5385.59985.74.45464.0307.021.0303.4216.5113.9
260.671910.08.140.00.5385.81390.34.68204.0307.021.0376.8814.8116.6
270.955770.08.140.00.5386.04788.84.45344.0307.021.0306.3817.2814.8
280.772990.08.140.00.5386.49594.44.45474.0307.021.0387.9412.8018.4
291.002450.08.140.00.5386.67487.34.23904.0307.021.0380.2311.9821.0
.............................................
4764.871410.018.100.00.6146.48493.62.305324.0666.020.2396.2118.6816.7
47715.023400.018.100.00.6145.30497.32.100724.0666.020.2349.4824.9112.0
47810.233000.018.100.00.6146.18596.72.170524.0666.020.2379.7018.0314.6
47914.333700.018.100.00.6146.22988.01.951224.0666.020.2383.3213.1121.4
4805.824010.018.100.00.5326.24264.73.424224.0666.020.2396.9010.7423.0
4815.708180.018.100.00.5326.75074.93.331724.0666.020.2393.077.7423.7
4825.731160.018.100.00.5327.06177.03.410624.0666.020.2395.287.0125.0
4832.818380.018.100.00.5325.76240.34.098324.0666.020.2392.9210.4221.8
4842.378570.018.100.00.5835.87141.93.724024.0666.020.2370.7313.3420.6
4853.673670.018.100.00.5836.31251.93.991724.0666.020.2388.6210.5821.2
4865.691750.018.100.00.5836.11479.83.545924.0666.020.2392.6814.9819.1
4874.835670.018.100.00.5835.90553.23.152324.0666.020.2388.2211.4520.6
4880.150860.027.740.00.6095.45492.71.82094.0711.020.1395.0918.0615.2
4890.183370.027.740.00.6095.41498.31.75544.0711.020.1344.0523.977.0
4900.207460.027.740.00.6095.09398.01.82264.0711.020.1318.4329.688.1
4910.105740.027.740.00.6095.98398.81.86814.0711.020.1390.1118.0713.6
4920.111320.027.740.00.6095.98383.52.10994.0711.020.1396.9013.3520.1
4930.173310.09.690.00.5855.70754.02.38176.0391.019.2396.9012.0121.8
4940.279570.09.690.00.5855.92642.62.38176.0391.019.2396.9013.5924.5
4950.178990.09.690.00.5855.67028.82.79866.0391.019.2393.2917.6023.1
4960.289600.09.690.00.5855.39072.92.79866.0391.019.2396.9021.1419.7
4970.268380.09.690.00.5855.79470.62.89276.0391.019.2396.9014.1018.3
4980.239120.09.690.00.5856.01965.32.40916.0391.019.2396.9012.9221.2
4990.177830.09.690.00.5855.56973.52.39996.0391.019.2395.7715.1017.5
5000.224380.09.690.00.5856.02779.72.49826.0391.019.2396.9014.3316.8
5010.062630.011.930.00.5736.59369.12.47861.0273.021.0391.999.6722.4
5020.045270.011.930.00.5736.12076.72.28751.0273.021.0396.909.0820.6
5030.060760.011.930.00.5736.97691.02.16751.0273.021.0396.905.6423.9
5040.109590.011.930.00.5736.79489.32.38891.0273.021.0393.456.4822.0
5050.047410.011.930.00.5736.03080.82.50501.0273.021.0396.907.8811.9
\n", "

506 rows × 14 columns

\n", "
" ], "text/plain": [ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX \\\n", "0 0.00632 18.0 2.31 0.0 0.538 6.575 65.2 4.0900 1.0 296.0 \n", "1 0.02731 0.0 7.07 0.0 0.469 6.421 78.9 4.9671 2.0 242.0 \n", "2 0.02729 0.0 7.07 0.0 0.469 7.185 61.1 4.9671 2.0 242.0 \n", "3 0.03237 0.0 2.18 0.0 0.458 6.998 45.8 6.0622 3.0 222.0 \n", "4 0.06905 0.0 2.18 0.0 0.458 7.147 54.2 6.0622 3.0 222.0 \n", "5 0.02985 0.0 2.18 0.0 0.458 6.430 58.7 6.0622 3.0 222.0 \n", "6 0.08829 12.5 7.87 0.0 0.524 6.012 66.6 5.5605 5.0 311.0 \n", "7 0.14455 12.5 7.87 0.0 0.524 6.172 96.1 5.9505 5.0 311.0 \n", "8 0.21124 12.5 7.87 0.0 0.524 5.631 100.0 6.0821 5.0 311.0 \n", "9 0.17004 12.5 7.87 0.0 0.524 6.004 85.9 6.5921 5.0 311.0 \n", "10 0.22489 12.5 7.87 0.0 0.524 6.377 94.3 6.3467 5.0 311.0 \n", "11 0.11747 12.5 7.87 0.0 0.524 6.009 82.9 6.2267 5.0 311.0 \n", "12 0.09378 12.5 7.87 0.0 0.524 5.889 39.0 5.4509 5.0 311.0 \n", "13 0.62976 0.0 8.14 0.0 0.538 5.949 61.8 4.7075 4.0 307.0 \n", "14 0.63796 0.0 8.14 0.0 0.538 6.096 84.5 4.4619 4.0 307.0 \n", "15 0.62739 0.0 8.14 0.0 0.538 5.834 56.5 4.4986 4.0 307.0 \n", "16 1.05393 0.0 8.14 0.0 0.538 5.935 29.3 4.4986 4.0 307.0 \n", "17 0.78420 0.0 8.14 0.0 0.538 5.990 81.7 4.2579 4.0 307.0 \n", "18 0.80271 0.0 8.14 0.0 0.538 5.456 36.6 3.7965 4.0 307.0 \n", "19 0.72580 0.0 8.14 0.0 0.538 5.727 69.5 3.7965 4.0 307.0 \n", "20 1.25179 0.0 8.14 0.0 0.538 5.570 98.1 3.7979 4.0 307.0 \n", "21 0.85204 0.0 8.14 0.0 0.538 5.965 89.2 4.0123 4.0 307.0 \n", "22 1.23247 0.0 8.14 0.0 0.538 6.142 91.7 3.9769 4.0 307.0 \n", "23 0.98843 0.0 8.14 0.0 0.538 5.813 100.0 4.0952 4.0 307.0 \n", "24 0.75026 0.0 8.14 0.0 0.538 5.924 94.1 4.3996 4.0 307.0 \n", "25 0.84054 0.0 8.14 0.0 0.538 5.599 85.7 4.4546 4.0 307.0 \n", "26 0.67191 0.0 8.14 0.0 0.538 5.813 90.3 4.6820 4.0 307.0 \n", "27 0.95577 0.0 8.14 0.0 0.538 6.047 88.8 4.4534 4.0 307.0 \n", "28 0.77299 0.0 8.14 0.0 0.538 6.495 94.4 4.4547 4.0 307.0 \n", "29 1.00245 0.0 8.14 0.0 0.538 6.674 87.3 4.2390 4.0 307.0 \n", ".. ... ... ... ... ... ... ... ... ... ... \n", "476 4.87141 0.0 18.10 0.0 0.614 6.484 93.6 2.3053 24.0 666.0 \n", "477 15.02340 0.0 18.10 0.0 0.614 5.304 97.3 2.1007 24.0 666.0 \n", "478 10.23300 0.0 18.10 0.0 0.614 6.185 96.7 2.1705 24.0 666.0 \n", "479 14.33370 0.0 18.10 0.0 0.614 6.229 88.0 1.9512 24.0 666.0 \n", "480 5.82401 0.0 18.10 0.0 0.532 6.242 64.7 3.4242 24.0 666.0 \n", "481 5.70818 0.0 18.10 0.0 0.532 6.750 74.9 3.3317 24.0 666.0 \n", "482 5.73116 0.0 18.10 0.0 0.532 7.061 77.0 3.4106 24.0 666.0 \n", "483 2.81838 0.0 18.10 0.0 0.532 5.762 40.3 4.0983 24.0 666.0 \n", "484 2.37857 0.0 18.10 0.0 0.583 5.871 41.9 3.7240 24.0 666.0 \n", "485 3.67367 0.0 18.10 0.0 0.583 6.312 51.9 3.9917 24.0 666.0 \n", "486 5.69175 0.0 18.10 0.0 0.583 6.114 79.8 3.5459 24.0 666.0 \n", "487 4.83567 0.0 18.10 0.0 0.583 5.905 53.2 3.1523 24.0 666.0 \n", "488 0.15086 0.0 27.74 0.0 0.609 5.454 92.7 1.8209 4.0 711.0 \n", "489 0.18337 0.0 27.74 0.0 0.609 5.414 98.3 1.7554 4.0 711.0 \n", "490 0.20746 0.0 27.74 0.0 0.609 5.093 98.0 1.8226 4.0 711.0 \n", "491 0.10574 0.0 27.74 0.0 0.609 5.983 98.8 1.8681 4.0 711.0 \n", "492 0.11132 0.0 27.74 0.0 0.609 5.983 83.5 2.1099 4.0 711.0 \n", "493 0.17331 0.0 9.69 0.0 0.585 5.707 54.0 2.3817 6.0 391.0 \n", "494 0.27957 0.0 9.69 0.0 0.585 5.926 42.6 2.3817 6.0 391.0 \n", "495 0.17899 0.0 9.69 0.0 0.585 5.670 28.8 2.7986 6.0 391.0 \n", "496 0.28960 0.0 9.69 0.0 0.585 5.390 72.9 2.7986 6.0 391.0 \n", "497 0.26838 0.0 9.69 0.0 0.585 5.794 70.6 2.8927 6.0 391.0 \n", "498 0.23912 0.0 9.69 0.0 0.585 6.019 65.3 2.4091 6.0 391.0 \n", "499 0.17783 0.0 9.69 0.0 0.585 5.569 73.5 2.3999 6.0 391.0 \n", "500 0.22438 0.0 9.69 0.0 0.585 6.027 79.7 2.4982 6.0 391.0 \n", "501 0.06263 0.0 11.93 0.0 0.573 6.593 69.1 2.4786 1.0 273.0 \n", "502 0.04527 0.0 11.93 0.0 0.573 6.120 76.7 2.2875 1.0 273.0 \n", "503 0.06076 0.0 11.93 0.0 0.573 6.976 91.0 2.1675 1.0 273.0 \n", "504 0.10959 0.0 11.93 0.0 0.573 6.794 89.3 2.3889 1.0 273.0 \n", "505 0.04741 0.0 11.93 0.0 0.573 6.030 80.8 2.5050 1.0 273.0 \n", "\n", " PTRATIO B LSTAT Цена \n", "0 15.3 396.90 4.98 24.0 \n", "1 17.8 396.90 9.14 21.6 \n", "2 17.8 392.83 4.03 34.7 \n", "3 18.7 394.63 2.94 33.4 \n", "4 18.7 396.90 5.33 36.2 \n", "5 18.7 394.12 5.21 28.7 \n", "6 15.2 395.60 12.43 22.9 \n", "7 15.2 396.90 19.15 27.1 \n", "8 15.2 386.63 29.93 16.5 \n", "9 15.2 386.71 17.10 18.9 \n", "10 15.2 392.52 20.45 15.0 \n", "11 15.2 396.90 13.27 18.9 \n", "12 15.2 390.50 15.71 21.7 \n", "13 21.0 396.90 8.26 20.4 \n", "14 21.0 380.02 10.26 18.2 \n", "15 21.0 395.62 8.47 19.9 \n", "16 21.0 386.85 6.58 23.1 \n", "17 21.0 386.75 14.67 17.5 \n", "18 21.0 288.99 11.69 20.2 \n", "19 21.0 390.95 11.28 18.2 \n", "20 21.0 376.57 21.02 13.6 \n", "21 21.0 392.53 13.83 19.6 \n", "22 21.0 396.90 18.72 15.2 \n", "23 21.0 394.54 19.88 14.5 \n", "24 21.0 394.33 16.30 15.6 \n", "25 21.0 303.42 16.51 13.9 \n", "26 21.0 376.88 14.81 16.6 \n", "27 21.0 306.38 17.28 14.8 \n", "28 21.0 387.94 12.80 18.4 \n", "29 21.0 380.23 11.98 21.0 \n", ".. ... ... ... ... \n", "476 20.2 396.21 18.68 16.7 \n", "477 20.2 349.48 24.91 12.0 \n", "478 20.2 379.70 18.03 14.6 \n", "479 20.2 383.32 13.11 21.4 \n", "480 20.2 396.90 10.74 23.0 \n", "481 20.2 393.07 7.74 23.7 \n", "482 20.2 395.28 7.01 25.0 \n", "483 20.2 392.92 10.42 21.8 \n", "484 20.2 370.73 13.34 20.6 \n", "485 20.2 388.62 10.58 21.2 \n", "486 20.2 392.68 14.98 19.1 \n", "487 20.2 388.22 11.45 20.6 \n", "488 20.1 395.09 18.06 15.2 \n", "489 20.1 344.05 23.97 7.0 \n", "490 20.1 318.43 29.68 8.1 \n", "491 20.1 390.11 18.07 13.6 \n", "492 20.1 396.90 13.35 20.1 \n", "493 19.2 396.90 12.01 21.8 \n", "494 19.2 396.90 13.59 24.5 \n", "495 19.2 393.29 17.60 23.1 \n", "496 19.2 396.90 21.14 19.7 \n", "497 19.2 396.90 14.10 18.3 \n", "498 19.2 396.90 12.92 21.2 \n", "499 19.2 395.77 15.10 17.5 \n", "500 19.2 396.90 14.33 16.8 \n", "501 21.0 391.99 9.67 22.4 \n", "502 21.0 396.90 9.08 20.6 \n", "503 21.0 396.90 5.64 23.9 \n", "504 21.0 393.45 6.48 22.0 \n", "505 21.0 396.90 7.88 11.9 \n", "\n", "[506 rows x 14 columns]" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pd.concat([df, targ], axis=1) " ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [], "source": [ "from sklearn.linear_model import Lasso\n", "las = Lasso( 0.95)" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Lasso(alpha=0.95, copy_X=True, fit_intercept=True, max_iter=1000,\n", " normalize=False, positive=False, precompute=False, random_state=None,\n", " selection='cyclic', tol=0.0001, warm_start=False)" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_train, X_test, y_train, y_test = train_test_split( boston.data, boston.target, test_size=0.15)\n", "las.fit( X_train, y_train )" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.7039796490622132" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "las.score( X_train, y_train )" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.6800820288881564" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "las.score( X_test, y_test )" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-6.60302033e-02, 4.37445786e-02, -0.00000000e+00, 0.00000000e+00,\n", " -0.00000000e+00, 2.11143949e+00, 1.06164045e-03, -6.88378197e-01,\n", " 2.00499266e-01, -1.16324372e-02, -7.52971157e-01, 7.47979040e-03,\n", " -6.47627672e-01])" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "las.coef_" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [], "source": [ "from sklearn.tree import DecisionTreeRegressor\n", "regressor = DecisionTreeRegressor( ) #max_depth=5, min_impurity_decrease=0.01, random_state=0" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeRegressor(criterion='mse', max_depth=None, max_features=None,\n", " max_leaf_nodes=None, min_impurity_decrease=0.0,\n", " min_impurity_split=None, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " presort=False, random_state=None, splitter='best')" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.fit( boston.data, boston.target )" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [], "source": [ "X_train, X_test, y_train, y_test = train_test_split( boston.data, boston.target, test_size=0.15)" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeRegressor(criterion='mse', max_depth=None, max_features=None,\n", " max_leaf_nodes=None, min_impurity_decrease=0.0,\n", " min_impurity_split=None, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " presort=False, random_state=None, splitter='best')" ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.fit( X_train, y_train )" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1.0" ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.score( X_train, y_train )" ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.8698912616229756" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.score( X_test, y_test )" ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([23.7, 29.1, 33.4, 19.4, 18.3, 27.5, 21.8, 21.7, 19.2, 28.7, 48.5,\n", " 19.3, 12.5, 19.5, 23.1, 17.1, 17.4, 16.7, 23.7, 26.7, 34.9, 48.8,\n", " 50. , 18.3, 22.2, 18.9, 13.1, 14.8, 11.5, 22.6, 30.1, 19. , 32.4,\n", " 23.2, 13.4, 19.2, 15.6, 15.6, 36.2, 7.2, 26.4, 13.1, 28.7, 24. ,\n", " 21.4, 21.2, 14.9, 8.3, 26.5, 8.3, 25.1, 7.2, 27. , 13.4, 24. ,\n", " 22.2, 22.8, 38.7, 42.3, 23.1, 21. , 14.9, 7.2, 21.7, 27.1, 25. ,\n", " 22.9, 30.8, 33.4, 7.2, 19.4, 33.1, 23.7, 20.5, 21.4, 50. ])" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pred = regressor.predict( X_test )\n", "pred" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([25.3, 24.1, 35.4, 23.4, 19.3, 30.1, 19.9, 21.2, 19.4, 23.6, 50. ,\n", " 19.7, 15.1, 16. , 22.9, 17.6, 18.4, 10.9, 24.2, 31.5, 34.9, 50. ,\n", " 50. , 23.1, 23.9, 16.6, 18.4, 15.2, 12.8, 29.1, 29. , 15.6, 32. ,\n", " 16.1, 13.4, 19.6, 13.9, 14.6, 25.2, 10.5, 18.6, 14.1, 23.9, 21.2,\n", " 25. , 18.9, 17.8, 8.8, 22. , 10.9, 23.3, 10.2, 25. , 14.9, 18.2,\n", " 23.9, 20.2, 43.8, 44. , 16.5, 18.4, 14.6, 12.1, 19.9, 24.4, 24.6,\n", " 21.4, 30.1, 33.3, 8.5, 18. , 29.4, 23.5, 21.4, 20.6, 43.1])" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_test" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([ 2., 4., 7., 14., 21., 15., 7., 1., 3., 2.]),\n", " array([0.59504132, 0.6887482 , 0.78245508, 0.87616195, 0.96986883,\n", " 1.06357571, 1.15728258, 1.25098946, 1.34469634, 1.43840321,\n", " 1.53211009]),\n", " )" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.hist( pred/y_test )" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.17617657143740723" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.std(pred / y_test)" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3.331974907874248" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.std(pred - y_test)" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([ 0.54666729, 0.59044073, -1.45687285, 0.40456359, 0.65648541,\n", " 0.39547472, 0.22922286, 0.36025836, -2.13574704, 0.17980798])" ] }, "execution_count": 56, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.model_selection import cross_val_score\n", "cross_val_score(regressor, boston.data, boston.target, cv=10)" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [], "source": [ "from sklearn.tree import DecisionTreeRegressor\n", "regressor = DecisionTreeRegressor( max_depth=5, min_impurity_decrease=0.01 ) #random_state=0" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeRegressor(criterion='mse', max_depth=5, max_features=None,\n", " max_leaf_nodes=None, min_impurity_decrease=0.01,\n", " min_impurity_split=None, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " presort=False, random_state=None, splitter='best')" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.fit( boston.data, boston.target )" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [], "source": [ "X_train, X_test, y_train, y_test = train_test_split( boston.data, boston.target, test_size=0.15)" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeRegressor(criterion='mse', max_depth=5, max_features=None,\n", " max_leaf_nodes=None, min_impurity_decrease=0.01,\n", " min_impurity_split=None, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " presort=False, random_state=None, splitter='best')" ] }, "execution_count": 60, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.fit( X_train, np.log(y_train) )" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.6993837946164134" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.score( X_train, np.log(y_train) )" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.6283914392130323" ] }, "execution_count": 62, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.score( X_test, np.log(y_test) )" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([2.42322041, 2.81949328, 2.81949328, 2.42322041, 3.5790192 ,\n", " 3.5790192 , 2.81949328, 2.81949328, 3.11438922, 2.42322041,\n", " 3.11438922, 3.5790192 , 3.11438922, 3.11438922, 2.81949328,\n", " 3.11438922, 2.42322041, 3.11438922, 3.5790192 , 3.5790192 ,\n", " 3.5790192 , 3.5790192 , 3.11438922, 3.11438922, 3.11438922,\n", " 3.11438922, 3.11438922, 3.11438922, 3.5790192 , 3.11438922,\n", " 3.11438922, 3.11438922, 3.11438922, 3.11438922, 2.81949328,\n", " 2.81949328, 3.11438922, 3.5790192 , 3.5790192 , 3.11438922,\n", " 3.11438922, 3.11438922, 2.42322041, 2.81949328, 3.11438922,\n", " 2.42322041, 3.11438922, 2.81949328, 3.11438922, 3.11438922,\n", " 3.5790192 , 3.11438922, 3.11438922, 2.81949328, 3.11438922,\n", " 3.11438922, 3.11438922, 3.11438922, 2.81949328, 2.81949328,\n", " 3.5790192 , 3.5790192 , 3.11438922, 3.11438922, 2.42322041,\n", " 3.5790192 , 3.11438922, 3.5790192 , 3.5790192 , 3.11438922,\n", " 2.42322041, 3.11438922, 3.11438922, 2.81949328, 2.81949328,\n", " 2.81949328])" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pred = regressor.predict( X_test )\n", "pred" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([2.67414865, 2.63905733, 2.81540872, 2.2512918 , 3.91202301,\n", " 3.28091122, 2.74727091, 2.97041447, 3.17387846, 2.14006616,\n", " 2.4765384 , 3.91202301, 3.21084365, 3.34638915, 2.63188884,\n", " 3.08190997, 2.54160199, 3.41772668, 3.59731226, 3.09104245,\n", " 3.35689712, 3.56671182, 3.02529108, 3.19047635, 3.21084365,\n", " 3.06805294, 3.91202301, 3.12676054, 3.91202301, 3.32862669,\n", " 2.96527307, 3.314186 , 3.10009229, 3.16547505, 2.99573227,\n", " 2.96527307, 2.80336038, 3.58351894, 3.21887582, 3.13113691,\n", " 3.0155349 , 3.36729583, 2.00148 , 2.73436751, 3.32862669,\n", " 2.6461748 , 3.13983262, 3.06805294, 3.11794991, 3.02042489,\n", " 3.49953328, 3.0301337 , 3.09557761, 2.90690106, 3.06339092,\n", " 3.0056826 , 3.14415228, 3.16547505, 2.61006979, 2.62466859,\n", " 3.61899333, 3.63495111, 2.90142159, 3.20680324, 3.00071982,\n", " 3.39785848, 2.9601051 , 3.28466357, 3.8815638 , 3.10009229,\n", " 2.87919846, 3.08648664, 2.99071973, 3.07731226, 2.94443898,\n", " 2.74727091])" ] }, "execution_count": 64, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.log(y_test)" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([ 1., 1., 1., 10., 13., 22., 17., 7., 3., 1.]),\n", " array([-0.79763378, -0.65408532, -0.51053686, -0.3669884 , -0.22343994,\n", " -0.07989148, 0.06365698, 0.20720544, 0.3507539 , 0.49430236,\n", " 0.63785082]),\n", " )" ] }, "execution_count": 65, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.hist(pred - np.log(y_test) )" ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([ 2., 5., 14., 23., 16., 8., 5., 1., 1., 1.]),\n", " array([0.45039343, 0.59459503, 0.73879662, 0.88299822, 1.02719981,\n", " 1.17140141, 1.315603 , 1.4598046 , 1.60400619, 1.74820779,\n", " 1.89240938]),\n", " )" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.hist(np.exp(pred - np.log(y_test)))" ] }, { "cell_type": "code", "execution_count": 67, "metadata": {}, "outputs": [], "source": [ "#from sklearn.datasets import fetch_california_housing\n", "#housing = fetch_california_housing()" ] }, { "cell_type": "code", "execution_count": 68, "metadata": {}, "outputs": [], "source": [ "from sklearn.neighbors import KNeighborsClassifier" ] }, { "cell_type": "code", "execution_count": 69, "metadata": {}, "outputs": [], "source": [ "neigh = KNeighborsClassifier(n_neighbors=3)" ] }, { "cell_type": "code", "execution_count": 70, "metadata": {}, "outputs": [], "source": [ "X_train, X_test, y_train, y_test = train_test_split( iris.data, iris.target, test_size=0.15)" ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',\n", " metric_params=None, n_jobs=1, n_neighbors=3, p=2,\n", " weights='uniform')" ] }, "execution_count": 71, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neigh.fit( X_train, y_train )" ] }, { "cell_type": "code", "execution_count": 72, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.9763779527559056" ] }, "execution_count": 72, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neigh.score( X_train, y_train )" ] }, { "cell_type": "code", "execution_count": 73, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.9565217391304348" ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neigh.score( X_test, y_test )" ] }, { "cell_type": "code", "execution_count": 74, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1. , 0.93333333, 1. , 0.93333333, 0.86666667,\n", " 1. , 0.93333333, 1. , 1. , 1. ])" ] }, "execution_count": 74, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.model_selection import cross_val_score\n", "cross_val_score( neigh, iris.data, iris.target, cv=10)" ] }, { "cell_type": "code", "execution_count": 75, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.96\n", "0.9533333333333334\n", "0.9666666666666666\n", "0.9666666666666666\n" ] } ], "source": [ "for n in range(1,5):\n", " neigh = KNeighborsClassifier(n_neighbors=n)\n", " print(np.mean(cross_val_score( neigh, iris.data, iris.target, cv=10)))" ] }, { "cell_type": "code", "execution_count": 76, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1. , 0.93333333, 1. , 1. , 1. ,\n", " 0.86666667, 0.93333333, 0.93333333, 1. , 1. ])" ] }, "execution_count": 76, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.neighbors import RadiusNeighborsClassifier\n", "rad = RadiusNeighborsClassifier( radius = 0.75 )\n", "cross_val_score( rad, iris.data, iris.target, cv=10)" ] }, { "cell_type": "code", "execution_count": 77, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.75 0.9666666666666668\n", "0.9 0.9533333333333334\n", "1.05 0.9533333333333334\n", "1.2000000000000002 0.9400000000000001\n", "1.35 0.9200000000000002\n", "1.5 0.8866666666666667\n", "1.6500000000000001 0.8933333333333333\n", "1.8000000000000003 0.8866666666666667\n", "1.9500000000000002 0.8933333333333333\n", "2.1 0.9\n", "2.25 0.8800000000000001\n", "2.4000000000000004 0.8666666666666668\n", "2.5500000000000003 0.8800000000000001\n", "2.7 0.8933333333333333\n", "2.8500000000000005 0.8733333333333333\n", "3.0000000000000004 0.82\n", "3.1500000000000004 0.7866666666666666\n", "3.3000000000000003 0.7466666666666666\n", "3.45 0.7\n", "3.6000000000000005 0.6333333333333332\n", "3.7500000000000004 0.5800000000000001\n", "3.9000000000000004 0.56\n", "4.050000000000001 0.52\n", "4.200000000000001 0.47999999999999987\n", "4.3500000000000005 0.43999999999999995\n", "4.5 0.4133333333333334\n", "4.65 0.38000000000000006\n", "4.800000000000001 0.36000000000000004\n", "4.950000000000001 0.33333333333333337\n" ] } ], "source": [ "for r in np.arange(0.75, 5, 0.15):\n", " rad = RadiusNeighborsClassifier( radius = r )\n", " print(r, np.mean(cross_val_score( rad, iris.data, iris.target, cv=10)))" ] }, { "cell_type": "code", "execution_count": 78, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "X = iris.data[:, [0, 2]]\n", "y = iris.target\n", "\n", "x_min, x_max = X[:, 0].min() - 1, X[:, 0].max() + 1\n", "y_min, y_max = X[:, 1].min() - 1, X[:, 1].max() + 1\n", "xx, yy = np.meshgrid(np.arange(x_min, x_max, 0.1),\n", " np.arange(y_min, y_max, 0.1))\n", "\n", "f, axarr = plt.subplots(2, 2, sharex='col', sharey='row', figsize=(10, 8))\n", "\n", "for idx, clf, tt in zip(product([0, 1], [0, 1]),\n", " [KNeighborsClassifier(n_neighbors=1), KNeighborsClassifier(n_neighbors=3),\n", " RadiusNeighborsClassifier( radius = 4. ), DecisionTreeClassifier(max_depth=4, min_impurity_decrease=0.1)],\n", " ['KNeighborsClassifier, 1', 'KNeighborsClassifier, 3',\n", " 'RadiusNeighborsClassifier( radius = 4. ) 4', 'Decision Tree']):\n", "\n", " clf.fit( X, y )\n", " Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])\n", " Z = Z.reshape(xx.shape)\n", "\n", " axarr[idx[0], idx[1]].contourf(xx, yy, Z, alpha=0.4)\n", " axarr[idx[0], idx[1]].scatter(X[:, 0], X[:, 1], c=y,\n", " s=20, edgecolor='k')\n", " axarr[idx[0], idx[1]].set_title(tt)\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [], "source": [ "from sklearn.tree import DecisionTreeRegressor\n", "regressor = DecisionTreeRegressor( max_depth=5, min_impurity_decrease=0.01 ) #random_state=0" ] }, { "cell_type": "code", "execution_count": 80, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeRegressor(criterion='mse', max_depth=5, max_features=None,\n", " max_leaf_nodes=None, min_impurity_decrease=0.01,\n", " min_impurity_split=None, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " presort=False, random_state=None, splitter='best')" ] }, "execution_count": 80, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.fit( boston.data, boston.target )" ] }, { "cell_type": "code", "execution_count": 81, "metadata": {}, "outputs": [], "source": [ "X_train, X_test, y_train, y_test = train_test_split( boston.data, boston.target, test_size=0.15)" ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DecisionTreeRegressor(criterion='mse', max_depth=5, max_features=None,\n", " max_leaf_nodes=None, min_impurity_decrease=0.01,\n", " min_impurity_split=None, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " presort=False, random_state=None, splitter='best')" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.fit( X_train, np.log(y_train) )" ] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.7038988391585246" ] }, "execution_count": 83, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.score( X_train, np.log(y_train) )" ] }, { "cell_type": "code", "execution_count": 84, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.5879761258737521" ] }, "execution_count": 84, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regressor.score( X_test, np.log(y_test) )" ] }, { "cell_type": "code", "execution_count": 85, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([3.53986065, 3.53986065, 3.08085185, 3.08085185, 3.08085185,\n", " 3.53986065, 3.08085185, 2.29529697, 2.75531767, 3.08085185,\n", " 3.08085185, 3.53986065, 3.08085185, 3.53986065, 3.08085185,\n", " 3.53986065, 3.08085185, 2.75531767, 3.53986065, 2.75531767,\n", " 2.75531767, 3.53986065, 3.08085185, 2.29529697, 3.08085185,\n", " 3.53986065, 2.29529697, 2.29529697, 3.08085185, 3.08085185,\n", " 3.53986065, 3.08085185, 3.08085185, 3.53986065, 3.08085185,\n", " 2.75531767, 3.08085185, 2.75531767, 3.08085185, 2.75531767,\n", " 3.08085185, 3.08085185, 3.08085185, 2.29529697, 3.08085185,\n", " 3.08085185, 3.08085185, 3.53986065, 3.53986065, 3.53986065,\n", " 3.08085185, 3.08085185, 3.53986065, 3.08085185, 3.08085185,\n", " 3.08085185, 3.53986065, 2.29529697, 3.08085185, 2.29529697,\n", " 3.08085185, 3.08085185, 2.75531767, 3.08085185, 3.08085185,\n", " 3.08085185, 3.53986065, 3.53986065, 2.75531767, 2.75531767,\n", " 2.75531767, 3.08085185, 3.08085185, 2.29529697, 3.53986065,\n", " 2.29529697])" ] }, "execution_count": 85, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pred = regressor.predict( X_test )\n", "pred" ] }, { "cell_type": "code", "execution_count": 86, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([3.5085559 , 3.77963382, 3.03974916, 2.77881927, 2.93916192,\n", " 3.55820113, 3.18221184, 3.314186 , 2.49320545, 3.21084365,\n", " 3.42751469, 3.33220451, 3.06339092, 3.5055574 , 3.15273602,\n", " 3.5085559 , 3.58905912, 2.9601051 , 3.49650756, 2.66722821,\n", " 2.87919846, 3.56671182, 3.02529108, 2.84490938, 3.09104245,\n", " 3.63495111, 2.59525471, 2.00148 , 3.01062089, 3.10009229,\n", " 3.41114771, 3.35689712, 3.05400118, 3.56104608, 2.83907846,\n", " 2.93385687, 3.11351531, 2.44234704, 2.96527307, 2.8507065 ,\n", " 2.77881927, 3.33576958, 3.32862669, 2.81540872, 3.16547505,\n", " 3.00071982, 3.13549422, 3.8286414 , 3.44041809, 3.54673969,\n", " 2.94443898, 2.97552957, 3.34990409, 2.93916192, 3.13983262,\n", " 3.39450839, 3.26575941, 2.73436751, 3.13983262, 2.57261223,\n", " 3.19458313, 3.12676054, 2.78501124, 3.44998755, 3.40452517,\n", " 2.8094027 , 3.48737508, 3.40452517, 2.87919846, 2.46809953,\n", " 2.72129543, 3.16968558, 3.28091122, 2.2617631 , 3.314186 ,\n", " 2.01490302])" ] }, "execution_count": 86, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.log(y_test)" ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([ 1., 0., 0., 3., 2., 10., 11., 23., 13., 13.]),\n", " array([-1.01888904, -0.88570307, -0.7525171 , -0.61933114, -0.48614517,\n", " -0.3529592 , -0.21977323, -0.08658727, 0.0465987 , 0.17978467,\n", " 0.31297064]),\n", " )" ] }, "execution_count": 87, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.hist(pred - np.log(y_test))" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.4" } }, "nbformat": 4, "nbformat_minor": 2 }