{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "legendary-workshop", "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "from sklearn import preprocessing\n", "from sklearn.decomposition import PCA\n", "import matplotlib.pyplot as plt\n", "\n", "import numpy as np\n" ] }, { "cell_type": "code", "execution_count": 2, "id": "killing-milan", "metadata": {}, "outputs": [], "source": [ "#ucitavanje i podela na opis instanci i klase\n", "df = pd.read_csv(\"C:/Users/student/Desktop/ipIndustija4/ipVezbe92021/vezbe9/iris.csv\")\n", "\n", "features = df.columns[:4].tolist()\n", "\n", "x=df[features]\n", "x.columns = features\n", "y=df[\"Species\"]\n", "\n", "#izdvajanje broja atributa\n", "num_features = x.shape[1]\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "liberal-tracy", "metadata": {}, "outputs": [], "source": [ "#standardizacija podataka\n", "scaler = preprocessing.StandardScaler().fit(x)\n", "x =pd.DataFrame(scaler.transform(x))\n", "x.columns = features\n" ] }, { "cell_type": "code", "execution_count": 4, "id": "liberal-british", "metadata": {}, "outputs": [], "source": [ "#primena pca\n", "pca=PCA()\n", "\n", "#pca=PCA(n_components=2) #izdvajanje prve dve glavne komponente\n" ] }, { "cell_type": "code", "execution_count": 5, "id": "under-pottery", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "PCA()" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#pravljenje pca modela\n", "pca.fit(x)\n" ] }, { "cell_type": "code", "execution_count": 6, "id": "elegant-natural", "metadata": {}, "outputs": [], "source": [ "#transformisanje skupa koriscenjem pca modela\n", "x_pca = pd.DataFrame(pca.transform(x))\n" ] }, { "cell_type": "code", "execution_count": 7, "id": "geological-witch", "metadata": {}, "outputs": [], "source": [ "#preimenovanje atributa transformisanog skupa\n", "pca_columns = ['pca%d'%i for i in range(1, pca.n_components_+1)]\n", "x_pca.columns=pca_columns\n" ] }, { "cell_type": "code", "execution_count": 8, "id": "level-vegetarian", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "components_ \n", "pca1=0.52*Sepal_Length-0.27*Sepal_Width0.58*Petal_Length0.56*Petal_Width\n", "pca2=0.38*Sepal_Length0.92*Sepal_Width0.02*Petal_Length0.07*Petal_Width\n", "pca3=-0.72*Sepal_Length0.24*Sepal_Width0.14*Petal_Length0.63*Petal_Width\n", "pca4=-0.26*Sepal_Length0.12*Sepal_Width0.80*Petal_Length-0.52*Petal_Width\n" ] } ], "source": [ "#prikaz izraza po kome se racunaju vrednosti u svakoj od glavnih komponenti\n", "print('components_ ')\n", "for i, component in zip(range(1, pca.n_components_+1), pca.components_):\n", " pca_desc=\"pca%d\"%i + \"=\"\n", " for j, value in zip(range(0, num_features), component):\n", " pca_desc+=\"%.2f*%s\"%(value, features[j])\n", " print(pca_desc)\n" ] }, { "cell_type": "code", "execution_count": 10, "id": "expanded-option", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "explained_variance_ratio_ \n", "pca1: 0.7296244541\n", "pca2: 0.2285076179\n", "pca3: 0.0366892189\n", "pca4: 0.0051787091\n" ] } ], "source": [ "#procenat varijanse objasnjen svakom od glavnih komponenti\n", "print('explained_variance_ratio_ ')\n", "for i, evr in zip(range(1, num_features+1), pca.explained_variance_ratio_):\n", " print(\"pca%d: %.10f\"%(i,evr))\n", "\n" ] }, { "cell_type": "code", "execution_count": 12, "id": "parallel-classroom", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "t=plt.bar(pca_columns, pca.explained_variance_ratio_, label='Procenat varijanse')\n" ] }, { "cell_type": "code", "execution_count": 20, "id": "stunning-drill", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYgAAAEGCAYAAAB/+QKOAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAvyElEQVR4nO3deXxU1f3/8dcbCDvIFhHZQVDADQ1QEBXB4lILWqnYaiv+Wi0u4L5Tpa79IrZ1q4pL0Zaq1BUVVxaRIkpARQFRQJaAVQSRfQn5/P64NzCGSXIhmdxk8nk+HvOYuedun8nAfOaec+45MjOcc865gqrEHYBzzrnyyROEc865pDxBOOecS8oThHPOuaQ8QTjnnEuqWtwBlJYmTZpYmzZt4g7DOecqlNmzZ39nZpnJ1qVNgmjTpg3Z2dlxh+GccxWKpGWFrfMqJuecc0l5gnDOOZeUJwjnnHNJpU0bRDI7duwgJyeHrVu3xh2Kq+Bq1qxJixYtyMjIiDsU58pMWieInJwc6tWrR5s2bZAUdziugjIz1qxZQ05ODm3bto07HOfKTMqqmCQ9IelbSZ8Vsl6S7pO0SNJcSUclrDtP0pfh47x9jWHr1q00btzYk4MrEUk0btzYr0Rd+bNgHIxpA/dUCZ4XjCvVw6eyDWIscHIR608BOoSPC4GHACQ1Am4BegDdgVskNdzXIDw5uNLg/45cubNgHLx1IWxYBljw/NaFpZokUlbFZGbTJLUpYpOBwFMWjDc+U1IDSc2APsDbZrYWQNLbBInm6VTF6pxz5YLlQe4W2LH5x8+5SZanXhU8J8rdDO/dBJ3OKZVw4myDaA6sSFjOCcsKK9+DpAsJrj5o1apVaqIsobp167Jx40YAJk6cyOWXX87bb79N69atU3K+IUOGcNpppzFo0KBCtxk7diz9+/fnwAMPBOD3v/89V155JZ07d05JTCWVnZ3NU089xX333ceECROYP38+119/fdxhucrCDHK37v5iLupLu6h1u5aLWLdzW8nj3bC85McIVehGajMbA4wByMrKKvnMRwvGBdl3w3Ko1wqOvaPUMvGkSZMYPnw4b775ZsqSQ1Rjx47l0EMP3ZUgHnvssVjjKUpubi5ZWVlkZWUBMGDAAAYMGBBzVJVUCv9/7DUz2Lm95F/MOyJ+ee8LVYWM2lCtFlSr/ePX1feDOs12L1erFa5PfF1wXYFtnjkWNubsed56pfdjOc4EsRJombDcIixbSVDNlFg+NeXR5Nfn5V+y5dfnQYn/E0ybNo0LLriAiRMn0r59e5YuXcppp53GZ58F7fejR49m48aNjBw5kj59+tC1a1fee+89Nm3axFNPPcVdd93Fp59+yuDBg7n99tuL3D/RrbfeyiuvvMKWLVvo1asXjzzyCM8//zzZ2dmcc8451KpVi/fff59TTjmF0aNHk52dzeLFi7n77ruBIJFkZ2dz9dVXc8opp9C7d29mzJhB8+bNefnll6lVqxaPPvooY8aMYfv27Rx00EH885//pHbt2rtiyMvLo127dnz88cc0aNAAgA4dOjB9+nQ+/PBDbr/9drZv307jxo0ZN24cTZs2ZeTIkSxevJglS5bQqlUr/vCHPzB69GheffXVXTE98MADvPLKK4Xuv3z5cpYsWcLy5cu5/PLLGT58OJs2beKss84iJyeHnTt38sc//pHBgwcn/Tt5m0MBUf9/7NxRul/MRf06t7x9eCMq5Mu3NmTUgdqZxX9pF7Z/wXVVU9wl+rg///gzgeC8x95RaqeIM0FMAC6V9AxBg/QPZva1pDeBOxMapvsDN5T4bFMuh28/Lnz91zP3vLzL3Qxv/g7mPpp8n/2PhBP+VuRpt23bxumnn87UqVM55JBDIoVavXp1srOzuffeexk4cCCzZ8+mUaNGtG/fniuuuCLSMQAuvfRSbr75ZgB+85vf8OqrrzJo0CAeeOABRo8evetXeb4zzzyTnj177koQzz77LDfddBMAX375JU8//TSPPvooZ511Fs8//zznnnsuv/jFL7jgggsAGDFiBI8//jjDhg3bdcwqVaowcOBAXnzxRc4//3w++OADWrduTdOmTenduzczZ85EEo899hijRo3innvuAWD+/PlMnz6dWrVqMXXq1KTvr6j9P//8c6ZMmcKGDRs4+OCDueiii3jjjTc48MADee211wD44YcfCv07/fznP4/8d057eTvh3auT13e/ft7uuvDcLZCXu2/nqFYr4Zd2/pdv+Lpmw737Yi64/KMv7eqQLsk/PzGn8KouZQlC0tMEVwJNJOUQ9EzKADCzh4GJwKnAImAzcH64bq2k24BZ4aFuzW+wTqnC6v5KWCeYkZFBr169ePzxx7n33nsj7ZNfhXLYYYfRpUsXmjVrBkC7du1YsWLFrl/ixZkyZQqjRo1i8+bNrF27li5duhT5xZeZmUm7du2YOXMmHTp04PPPP+eYY45h2bJltG3bliOPPBKAo48+mqVLlwLw2WefMWLECNatW8fGjRs56aST9jhu/q/0888/n2eeeYbBgwcDwX0qgwcP5uuvv2b79u0/usdgwIAB1KpVq8j3V9T+P/vZz6hRowY1atRg//3355tvvuGwww7jqquu4rrrruO0007j2GOP3ae/U9ozg3WLYfk7sOwdWDEFthbyX9B2wkEDS/alXa0GyAd12CedzklpNV8qezH9qpj1BlxSyLongCdKNaBifukzpk3YXayAeq1h8NR9Pm2VKlUYP348/fr148477+TGG2+kWrVq5OXtvjwu2L++Ro0au/bNf52/nJubW+z++WUXX3wx2dnZtGzZkpEjR0bqx3/22Wczfvx4DjnkEM4444xdVS2JcVStWpUtW4J62SFDhvDSSy9xxBFHMHbs2KS/9nv27MmiRYtYvXo1L730EiNGjABg2LBhXHnllQwYMICpU6f+qIqsTp06xcZa1P4F483NzaVjx47MmTOHiRMnMmLECPr168e11167T3+ntLPpG1g+eXdSyG/orNcS2g+ExRNg65o996vXGn76SNnG6sqMp+18x94R/JpJVEr1ebVr1+a1115j3LhxPP744zRt2pRvv/2WNWvWsG3bNl599dW9Ol6U/fO/5Jo0acLGjRt57rnndq2rV68eGzZsSHrsM844g5dffpmnn36as88+u9hYNmzYQLNmzdixYwfjxiXvfy2JM844gyuvvJJOnTrRuHFjIKjiad486KD25JNPFnuugvZ2/1WrVlG7dm3OPfdcrrnmGubMmVPk3ymtbd8AS16DqVfCk4fDwwfAxF/Dly/AAVnQ7+9w/kK4YBmc/AT0vTdl/z9c+VWhezGVqhTX5zVq1Ig33niD4447jszMTG6++Wa6d+9O8+bNI7dN5MvIyCh2/wYNGnDBBRdw6KGHcsABB9CtW7dd64YMGcLQoUN3NVInatiwIZ06dWL+/Pl079692Fhuu+02evToQWZmJj169Cg08QwePJhu3boxduzYXWUjR47kl7/8JQ0bNqRv37589dVXkd5//lXN3u7/6aefcs0111ClShUyMjJ46KGHivw7pZWdO+DrD4IrhOWTgja3vFyoWgOa94bed0HrE2H/rlCl6p77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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Prikaz kumulativne sume procenta varijanse za glavne komponente.\n", "# Koristan je za odredjivanje dovoljnog broja glavnih komponenti, tj. atributa\n", "# za dalji rad. Za ovaj primer to je 2 - jer je kumulativna suma procenta varijanse\n", "# za prve dve komponente veca od 95%\n", "plt.plot(pca_columns, np.cumsum(pca.explained_variance_ratio_), color='darkorange', label='Kumulativna varijansa', marker='o')\n", " \n", "#postavljanje teksta za x i y osu i legende\n", "plt.xlabel('Glavne komponente')\n", "plt.ylabel('Procent objasnjene varijanse')\n", "plt.legend()\n", "\n", "#prikaz slike\n", "plt.show()\n", "\n" ] }, { "cell_type": "code", "execution_count": 21, "id": "fresh-pilot", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "colors = ['red', 'blue', 'gold']\n", "\n", "#Grafcki prikaz skupa iris pomocu rasprsenih elemenata koriscenjem prve dve glavne komponente\n", "#Svakoj klasi se dodeljuje odredjena boja, a instance na slici\n", "#se obelezavaju bojom na osnovu klase kojoj pripadaju\n", "classes =y.unique()\n", "\n", "#za svaku klasu\n", "for i, class_value in zip(range(0, len(classes)), classes):\n", " #izdvajaju se instance klase\n", " class_samples = x_pca.iloc[ y[ y == class_value].index]\n", "\n", " #i prikazuju se pomocu rasprsenih elemenata\n", " plt.scatter(class_samples['pca1'], class_samples['pca2'], color=colors[i],\n", " s=10, marker='o', label=\"class %s\" % class_value)\n", "\n", "#postavljanje legende\n", "plt.legend(loc='upper right')\n", "\n", "#prikaz slike\n", "plt.show()\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "id": "streaming-silicon", "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.8.6" } }, "nbformat": 4, "nbformat_minor": 5 }