diff --git a/EDA.ipynb b/EDA.ipynb index bc217d904b024f1ffc1ed4920cd489a37469a527..75a3b680fa5aa28a7cac2460d0097efda94cf0c5 100644 --- a/EDA.ipynb +++ b/EDA.ipynb @@ -347,6 +347,756 @@ "cell_type": "markdown", "metadata": {}, "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### OpracowaĹ: Jakub Szczegiecki" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "from plotnine import ggplot, aes, geom_point, geom_line, ggtitle\n", + "from sklearn.decomposition import PCA" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>PROXIMITY</th>\n", + " <th>TIMESTAMP</th>\n", + " <th>MEASUREMENT</th>\n", + " <th>EPC</th>\n", + " <th>EAN</th>\n", + " <th>ITEMID</th>\n", + " <th>STYLECOLOR</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>-70.4</td>\n", + " <td>2021-10-26T09:46:33.735</td>\n", + " <td>1</td>\n", + " <td>3035684754340E0000B594FD</td>\n", + " <td>5902805533040</td>\n", + " <td>2127269</td>\n", + " <td>RH267-85J</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>-61.8</td>\n", + " <td>2021-10-26T09:46:33.747</td>\n", + " <td>1</td>\n", + " <td>303568480C2B874000B59A39</td>\n", + " <td>5902851445731</td>\n", + " <td>2217401</td>\n", + " <td>RS483-99X</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>-74.4</td>\n", + " <td>2021-10-26T09:46:33.751</td>\n", + " <td>1</td>\n", + " <td>303568480C357A0000B59999</td>\n", + " <td>5902851547602</td>\n", + " <td>2227511</td>\n", + " <td>SB281-90M</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>-78.0</td>\n", + " <td>2021-10-26T09:46:33.754</td>\n", + " <td>1</td>\n", + " <td>30356847541DA78000B5BA4D</td>\n", + " <td>5902805303667</td>\n", + " <td>2104706</td>\n", + " <td>RJ369-87X</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>-71.1</td>\n", + " <td>2021-10-26T09:46:33.758</td>\n", + " <td>1</td>\n", + " <td>30356847542A2B0000B5B215</td>\n", + " <td>5902805431803</td>\n", + " <td>2117629</td>\n", + " <td>RM119-93X</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>502684</th>\n", + " <td>-59.9</td>\n", + " <td>2021-10-26T10:52:08.744</td>\n", + " <td>43</td>\n", + " <td>303568458835010000B5BA58</td>\n", + " <td>5902690542769</td>\n", + " <td>2028744</td>\n", + " <td>QY337-00X</td>\n", + " </tr>\n", + " <tr>\n", + " <th>502685</th>\n", + " <td>-79.9</td>\n", + " <td>2021-10-26T10:52:08.745</td>\n", + " <td>43</td>\n", + " <td>513568458843D94000B5B5DE</td>\n", + " <td>5902690694772</td>\n", + " <td>2044040</td>\n", + " <td>QZ555-20X</td>\n", + " </tr>\n", + " <tr>\n", + " <th>502686</th>\n", + " <td>-66.8</td>\n", + " <td>2021-10-26T10:52:08.745</td>\n", + " <td>43</td>\n", + " <td>30356847541DA7C000B5BADD</td>\n", + " <td>5902805303674</td>\n", + " <td>2104707</td>\n", + " <td>RJ369-87X</td>\n", + " </tr>\n", + " <tr>\n", + " <th>502687</th>\n", + " <td>-60.8</td>\n", + " <td>2021-10-26T10:52:08.747</td>\n", + " <td>43</td>\n", + " <td>303568458835010000B5BA58</td>\n", + " <td>5902690542769</td>\n", + " <td>2028744</td>\n", + " <td>QY337-00X</td>\n", + " </tr>\n", + " <tr>\n", + " <th>502688</th>\n", + " <td>-75.7</td>\n", + " <td>2021-10-26T10:52:08.748</td>\n", + " <td>43</td>\n", + " <td>303568480C34550000B5A5E7</td>\n", + " <td>5902851535883</td>\n", + " <td>2226337</td>\n", + " <td>RV167-87X</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>502689 rows Ă 7 columns</p>\n", + "</div>" + ], + "text/plain": [ + " PROXIMITY TIMESTAMP MEASUREMENT \\\n", + "0 -70.4 2021-10-26T09:46:33.735 1 \n", + "1 -61.8 2021-10-26T09:46:33.747 1 \n", + "2 -74.4 2021-10-26T09:46:33.751 1 \n", + "3 -78.0 2021-10-26T09:46:33.754 1 \n", + "4 -71.1 2021-10-26T09:46:33.758 1 \n", + "... ... ... ... \n", + "502684 -59.9 2021-10-26T10:52:08.744 43 \n", + "502685 -79.9 2021-10-26T10:52:08.745 43 \n", + "502686 -66.8 2021-10-26T10:52:08.745 43 \n", + "502687 -60.8 2021-10-26T10:52:08.747 43 \n", + "502688 -75.7 2021-10-26T10:52:08.748 43 \n", + "\n", + " EPC EAN ITEMID STYLECOLOR \n", + "0 3035684754340E0000B594FD 5902805533040 2127269 RH267-85J \n", + "1 303568480C2B874000B59A39 5902851445731 2217401 RS483-99X \n", + "2 303568480C357A0000B59999 5902851547602 2227511 SB281-90M \n", + "3 30356847541DA78000B5BA4D 5902805303667 2104706 RJ369-87X \n", + "4 30356847542A2B0000B5B215 5902805431803 2117629 RM119-93X \n", + "... ... ... ... ... \n", + "502684 303568458835010000B5BA58 5902690542769 2028744 QY337-00X \n", + "502685 513568458843D94000B5B5DE 5902690694772 2044040 QZ555-20X \n", + "502686 30356847541DA7C000B5BADD 5902805303674 2104707 RJ369-87X \n", + "502687 303568458835010000B5BA58 5902690542769 2028744 QY337-00X \n", + "502688 303568480C34550000B5A5E7 5902851535883 2226337 RV167-87X \n", + "\n", + "[502689 rows x 7 columns]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.read_csv('C:/Users/jakub/Documents/query_main.csv', sep = ';', header = None)\n", + "df.columns = ['PROXIMITY', 'TIMESTAMP', 'MEASUREMENT', 'EPC', 'EAN', 'ITEMID', 'STYLECOLOR']\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>timestamp</th>\n", + " <th>hour</th>\n", + " <th>minute</th>\n", + " <th>second</th>\n", + " <th>microsecond</th>\n", + " <th>delta_ms</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>2021-10-26 09:46:33.735</td>\n", + " <td>9</td>\n", + " <td>46</td>\n", + " <td>33</td>\n", + " <td>735000</td>\n", + " <td>0.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>2021-10-26 09:46:33.747</td>\n", + " <td>9</td>\n", + " <td>46</td>\n", + " <td>33</td>\n", + " <td>747000</td>\n", + " <td>12.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>2021-10-26 09:46:33.751</td>\n", + " <td>9</td>\n", + " <td>46</td>\n", + " <td>33</td>\n", + " <td>751000</td>\n", + " <td>16.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>2021-10-26 09:46:33.754</td>\n", + " <td>9</td>\n", + " <td>46</td>\n", + " <td>33</td>\n", + " <td>754000</td>\n", + " <td>19.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>2021-10-26 09:46:33.758</td>\n", + " <td>9</td>\n", + " <td>46</td>\n", + " <td>33</td>\n", + " <td>758000</td>\n", + " <td>23.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>502684</th>\n", + " <td>2021-10-26 10:52:08.744</td>\n", + " <td>10</td>\n", + " <td>52</td>\n", + " <td>8</td>\n", + " <td>744000</td>\n", + " <td>3935009.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>502685</th>\n", + " <td>2021-10-26 10:52:08.745</td>\n", + " <td>10</td>\n", + " <td>52</td>\n", + " <td>8</td>\n", + " <td>745000</td>\n", + " <td>3935010.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>502686</th>\n", + " <td>2021-10-26 10:52:08.745</td>\n", + " <td>10</td>\n", + " <td>52</td>\n", + " <td>8</td>\n", + " <td>745000</td>\n", + " <td>3935010.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>502687</th>\n", + " <td>2021-10-26 10:52:08.747</td>\n", + " <td>10</td>\n", + " <td>52</td>\n", + " <td>8</td>\n", + " <td>747000</td>\n", + " <td>3935012.0</td>\n", + " </tr>\n", + " <tr>\n", + " <th>502688</th>\n", + " <td>2021-10-26 10:52:08.748</td>\n", + " <td>10</td>\n", + " <td>52</td>\n", + " <td>8</td>\n", + " <td>748000</td>\n", + " <td>3935013.0</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>502689 rows Ă 6 columns</p>\n", + "</div>" + ], + "text/plain": [ + " timestamp hour minute second microsecond delta_ms\n", + "0 2021-10-26 09:46:33.735 9 46 33 735000 0.0\n", + "1 2021-10-26 09:46:33.747 9 46 33 747000 12.0\n", + "2 2021-10-26 09:46:33.751 9 46 33 751000 16.0\n", + "3 2021-10-26 09:46:33.754 9 46 33 754000 19.0\n", + "4 2021-10-26 09:46:33.758 9 46 33 758000 23.0\n", + "... ... ... ... ... ... ...\n", + "502684 2021-10-26 10:52:08.744 10 52 8 744000 3935009.0\n", + "502685 2021-10-26 10:52:08.745 10 52 8 745000 3935010.0\n", + "502686 2021-10-26 10:52:08.745 10 52 8 745000 3935010.0\n", + "502687 2021-10-26 10:52:08.747 10 52 8 747000 3935012.0\n", + "502688 2021-10-26 10:52:08.748 10 52 8 748000 3935013.0\n", + "\n", + "[502689 rows x 6 columns]" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import datetime\n", + "\n", + "timestamp1 = df[\"TIMESTAMP\"].astype('datetime64[ns]')\n", + "\n", + "hour = timestamp1.astype('datetime64[ns]').dt.hour.astype(int)\n", + "minute = timestamp1.astype('datetime64[ns]').dt.minute.astype(int)\n", + "second = timestamp1.astype('datetime64[ns]').dt.second.astype(int)\n", + "microsecond = timestamp1.astype('datetime64[ns]').dt.microsecond.astype(int)\n", + "\n", + "millisecond = microsecond/1000+second*1000+minute*60000+hour*3600000\n", + "delta_ms = millisecond - millisecond[0]\n", + "delta_ms\n", + "\n", + "timestamp = pd.DataFrame()\n", + "timestamp = pd.concat([timestamp1, hour, minute, second, microsecond, delta_ms], axis = 1)\n", + "timestamp.columns = ['timestamp', 'hour', 'minute', 'second', 'microsecond', 'delta_ms']\n", + "\n", + "timestamp" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>PROXIMITY</th>\n", + " <th>NUMBER</th>\n", + " <th>EAN</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>-75.210592</td>\n", + " <td>4003</td>\n", + " <td>5902805820515</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>-75.055416</td>\n", + " <td>7902</td>\n", + " <td>5902805820546</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>-75.673864</td>\n", + " <td>6780</td>\n", + " <td>5902851535869</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>-76.017081</td>\n", + " <td>11937</td>\n", + " <td>5902851535913</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>-76.254074</td>\n", + " <td>8283</td>\n", + " <td>5902975218037</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>71</th>\n", + " <td>-74.921590</td>\n", + " <td>7531</td>\n", + " <td>5902805820447</td>\n", + " </tr>\n", + " <tr>\n", + " <th>72</th>\n", + " <td>-75.528464</td>\n", + " <td>7237</td>\n", + " <td>5902851852638</td>\n", + " </tr>\n", + " <tr>\n", + " <th>73</th>\n", + " <td>-76.882319</td>\n", + " <td>10967</td>\n", + " <td>5902975217993</td>\n", + " </tr>\n", + " <tr>\n", + " <th>74</th>\n", + " <td>-76.228160</td>\n", + " <td>3196</td>\n", + " <td>5902975236970</td>\n", + " </tr>\n", + " <tr>\n", + " <th>75</th>\n", + " <td>-76.337086</td>\n", + " <td>6439</td>\n", + " <td>5902975236994</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>76 rows Ă 3 columns</p>\n", + "</div>" + ], + "text/plain": [ + " PROXIMITY NUMBER EAN\n", + "0 -75.210592 4003 5902805820515\n", + "1 -75.055416 7902 5902805820546\n", + "2 -75.673864 6780 5902851535869\n", + "3 -76.017081 11937 5902851535913\n", + "4 -76.254074 8283 5902975218037\n", + ".. ... ... ...\n", + "71 -74.921590 7531 5902805820447\n", + "72 -75.528464 7237 5902851852638\n", + "73 -76.882319 10967 5902975217993\n", + "74 -76.228160 3196 5902975236970\n", + "75 -76.337086 6439 5902975236994\n", + "\n", + "[76 rows x 3 columns]" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.read_csv('C:/Users/jakub/Documents/query4.csv', sep = ';')\n", + "df['EAN'] = df['EAN'].astype(str)\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "([], [])" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.scatter(x=df['EAN'], y=df['NUMBER'], c=df['NUMBER'])\n", + "plt.xlabel('Tag')\n", + "plt.ylabel('Liczba odczytĂłw')\n", + "plt.title('Liczba odczytĂłw dla danego tagu')\n", + "plt.xticks([])" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 2 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax1 = plt.subplots()\n", + "\n", + "ax2 = ax1.twinx()\n", + "\n", + "ax1.bar(df['EAN'], df['NUMBER'], color='darkred', alpha=0.3, width = 0.5)\n", + "ax1.set_xticklabels([])\n", + "ax1.set_xlabel('Tag')\n", + "ax1.set_ylabel(\"Liczba odczytĂłw\" ,color='darkred')\n", + " \n", + "ax2.scatter(x=df['EAN'], y=df['PROXIMITY'], color='b')\n", + "ax2.set_xticklabels([])\n", + "ax2.set_ylim(-110,-25)\n", + "ax2.set_ylabel(\"Ĺrednia siĹa odczytu\",color='b')\n", + "\n", + "plt.title('Liczba odczytĂłw i Ĺrednia siĹa pomiaru z podziaĹem na tagi')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>PROXIMITY</th>\n", + " <th>NUMBER</th>\n", + " <th>ClassName</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>-75.313509</td>\n", + " <td>10674</td>\n", + " <td>knitwear</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>-75.236090</td>\n", + " <td>26874</td>\n", + " <td>ladies'_und/socks</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>-74.951699</td>\n", + " <td>160731</td>\n", + " <td>t-shirts_s_s</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>-76.448187</td>\n", + " <td>38199</td>\n", + " <td>jeans_others</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>-75.847888</td>\n", + " <td>43547</td>\n", + " <td>trousers</td>\n", + " </tr>\n", + " <tr>\n", + " <th>5</th>\n", + " <td>-75.493705</td>\n", + " <td>222664</td>\n", + " <td>t-shirts</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " PROXIMITY NUMBER ClassName\n", + "0 -75.313509 10674 knitwear\n", + "1 -75.236090 26874 ladies'_und/socks\n", + "2 -74.951699 160731 t-shirts_s_s\n", + "3 -76.448187 38199 jeans_others\n", + "4 -75.847888 43547 trousers\n", + "5 -75.493705 222664 t-shirts" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.read_csv('C:/Users/jakub/Documents/query5.csv', sep = ';')\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "<ipython-input-18-3c518dfe74d5>:6: UserWarning: FixedFormatter should only be used together with FixedLocator\n" + ] + }, + { + "data": { + "image/png": "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vjuNGjXib3/7GwBXX301H330ERtuuCGtW7fmk08+oV+/fnz33XcAXHTRRSxdupTLL7+cZcuWMXv2bFq0aMGkSZM4/PDDGTVqFM2bN+eHH36gZcuWpTGcdtpp/Pjjj6y33nrcdNNNNXZsq8Jwd96jxTnn6kCrVq1o1Sp02WjatCmdOnXiu+++Y6+99ipdp3fv3jz22GMAbLPNNqXlXbp04bfffmPRokU0btyYu+++m88/D5NzNGjQgBYtWgBw5513cvLJJ9O8ebgiLz1RfvDBB8ycOZO9996bMWPS52l2ufCxYZ1zro5NnTqVjz76iO23336F8rvvvps//OEPK63/+OOPs80229C4cWPmzp0LwIUXXkiPHj047LDDmDlzJgATJ05k4sSJ7LjjjvTu3ZsRI0YAsGzZMs466yz+9a9/1e6BFTBPls45V4d++eUXDjnkEK6//nqaNWtWWn7FFVfQqFEjjjrqqBXWnzBhAn/729+4/fbbASgpKWHatGnsuOOOfPjhh+ywww4UFRWVLps0aRKjR49m6NCh/OlPf2Lu3Lnccsst7LPPPmy88ca4qvFmWOecqyNLlizhkEMO4aijjuLggw8uLR8yZAjPPvssI0eOJM4TAcC0adM46KCDuO+++2jXrh0A66+/PmuttRYHHXQQAIcddhh33XUXAG3atKF3796sttpqbLbZZnTs2JFJkybx9ttv88Ybb3DLLbfwyy+/sHjxYtZee22uuuqqOjz6/OY1S+ecqwNmxvHHH0+nTp0488wzS8tHjBjB1VdfzfDhw1lrrbVKy+fOncu+++7LlVdeyY477lhaLon999+f0aNHAzBy5Eg6d+4MwIEHHsirr74KwKxZs5g4cSKbb745Dz74IN988w1Tp06luLiYY445xhNlJXlv2DTeG9Y5V1vefPNNdt55Z7baaisaNAj1lH/+85+ceuqpLFq0iPXXXx8InXxuu+02Lr/8cq688krat29fuo+XXnqJli1b8vXXX/PHP/6RuXPnssEGG3DPPfewySabYGacddZZjBgxgoYNG3LBBRcwYMCAFeK49957GTNmjPeGrSRPlmk8WTrnXOXVRLKUVAT8C9jAzGbFsvMIUzEuBU41s8RGYvNzls455xIlaWNgT+CbtLKK5jiuc37O0jnnXNKuA85hxdmhMs5xnERw4MnSOedc9TVKTXUYbyfk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\n", + "text/plain": [ + "<Figure size 432x288 with 2 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax1 = plt.subplots()\n", + "\n", + "ax2 = ax1.twinx()\n", + "\n", + "ax1.bar(df['ClassName'], df['NUMBER'], color='darkred', alpha=0.3)\n", + "ax1.set_xticklabels(labels = df['ClassName'], rotation = 90)\n", + "ax1.set_ylim(0,280000)\n", + "ax1.set_xlabel(\"Klasa\")\n", + "for x,y in zip(df['ClassName'],df['NUMBER']):\n", + " label = '{:d}'.format(y)\n", + " ax1.annotate(label, \n", + " (x,y), \n", + " textcoords=\"offset points\", \n", + " xytext=(0,10), \n", + " ha='center',\n", + " fontsize = 10) \n", + "ax1.set_ylabel(\"Liczba odczytĂłw\" ,color='darkred')\n", + " \n", + "ax2.scatter(x=df['ClassName'], y=df['PROXIMITY'], color='b')\n", + "ax2.set_ylim(-110,-25)\n", + "ax2.set_ylabel(\"Ĺrednia siĹa odczytu\",color='b')\n", + "\n", + "plt.title('Liczba odczytĂłw i Ĺrednia siĹa pomiaru z podziaĹem na klasy')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { @@ -365,7 +1115,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.3" + "version": "3.8.5" } }, "nbformat": 4, diff --git a/query4.csv b/query4.csv new file mode 100644 index 0000000000000000000000000000000000000000..d520c7916c8b39d4ea0d37600ec2406a97bb6e06 --- /dev/null +++ b/query4.csv @@ -0,0 +1,77 @@ +ďťżPROXIMITY;NUMBER;EAN +-75.210592;4003;5902805820515 +-75.055416;7902;5902805820546 +-75.673864;6780;5902851535869 +-76.017081;11937;5902851535913 +-76.254074;8283;5902975218037 +-73.848516;7045;5902975309292 +-73.886521;5149;5902690542745 +-75.297758;3480;5902805219685 +-75.428973;5788;5902805219692 +-75.241095;21180;5902805385885 +-76.780842;6431;5902805458756 +-75.883087;9159;5902805716504 +-76.237238;20688;5902851547602 +-74.208092;8650;5902690694734 +-72.697246;4322;5902805219708 +-75.250195;9445;5902805431803 +-75.937224;8258;5902805444681 +-75.077195;7389;5902805820553 +-75.281615;10449;5902975218044 +-74.381076;10146;5902975302408 +-74.846588;7798;5902690542769 +-75.655436;3449;5902805219715 +-75.719736;3420;5902805444674 +-76.673707;3986;5902805444698 +-76.642385;3329;5902805444711 +-76.891586;4861;5902805458763 +-76.605848;3522;5902851414515 +-75.358942;8968;5902851445731 +-77.425064;1951;5902851535906 +-77.892417;2387;5902975236956 +-74.803037;5235;5902975302415 +-73.495835;7852;5902975309285 +-75.679136;13411;5902805162677 +-75.976042;9546;5902805532999 +-75.567014;3926;5902805533002 +-78.560146;1912;5902805533224 +-76.340889;3666;5902805533255 +-74.685312;7544;5902805820461 +-75.252176;3653;5902805820577 +-76.334626;3919;5902851457468 +-74.026573;5020;5902975302385 +-73.516268;4223;5902975309308 +-75.320198;3634;5902805162639 +-73.858554;4027;5902805303674 +-78.279402;1976;5902805431797 +-75.080143;2367;5902805431810 +-76.217731;2989;5902805458787 +-74.170812;6938;5902805820416 +-71.926733;4874;5902805820423 +-74.212993;4056;5902805820454 +-77.527480;2016;5902975302392 +-74.894652;11369;5902690694741 +-75.932590;3231;5902805303650 +-74.470013;23157;5902805385823 +-74.897840;3566;5902805533019 +-77.018357;3361;5902805716511 +-72.377993;4994;5902805820393 +-75.241835;17117;5902805820508 +-75.732196;10405;5902851414508 +-75.596670;8769;5902851445700 +-74.726766;11630;5902851535883 +-74.860896;3437;5902851852614 +-76.746779;3012;5902975217986 +-75.818346;4028;5902690694772 +-75.250458;7519;5902805303667 +-76.576883;3664;5902805303681 +-76.845064;12420;5902805533040 +-78.004046;3163;5902805533279 +-77.475953;3514;5902805716498 +-76.856280;3065;5902805716535 +-76.370902;2959;5902805820409 +-74.921590;7531;5902805820447 +-75.528464;7237;5902851852638 +-76.882319;10967;5902975217993 +-76.228160;3196;5902975236970 +-76.337086;6439;5902975236994 diff --git a/query5.csv b/query5.csv new file mode 100644 index 0000000000000000000000000000000000000000..0906163e03296fbab7334fcf76529a152328c55e --- /dev/null +++ b/query5.csv @@ -0,0 +1,7 @@ +ďťżPROXIMITY;NUMBER;ClassName +-75.313509;10674;knitwear +-75.236090;26874;ladies'_und/socks +-74.951699;160731;t-shirts_s_s +-76.448187;38199;jeans_others +-75.847888;43547;trousers +-75.493705;222664;t-shirts