{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Consulta de datos con Postgres y Python" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import psycopg2\n", "import sqlalchemy\n", "import matplotlib as plt\n", "\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A continuación, configuraremos la conexión a nuestra base de datos de Postgres. Para conectarse, necesitará:\n", "\n", "* El nombre de host o la dirección IP donde se encuentra la base de datos\n", "* El puerto que escucha su base de datos (este valor predeterminado es 5439 para Postgres)\n", "* Su nombre de usuario\n", "* La contraseña\n", "* El nombre de la base de datos" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "from sqlalchemy import create_engine\n", "\n", "POSTGRES_ADDRESS = 'localhost' # Este es el servidor, puede ser una IP\n", "POSTGRES_PORT = '5432'\n", "POSTGRES_USERNAME = 'postgres' \n", "POSTGRES_PASSWORD = '1234' \n", "POSTGRES_DBNAME = 'dvdrental' \n", "\n", "# Ahora se configura la cadena de conexión.\n", "# Esta es una cadena que contiene los parámetros necesarios para establecer una\n", "# conexión con posgres.\n", "postgres_str = ('postgresql://{username}:{password}@{ipaddress}:{port}/{dbname}'.format(username=POSTGRES_USERNAME,\n", " password=POSTGRES_PASSWORD,\n", " ipaddress=POSTGRES_ADDRESS,\n", " port=POSTGRES_PORT,\n", " dbname=POSTGRES_DBNAME))\n", "# A continuación se crea la conexión\n", "cnx = create_engine(postgres_str)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A continuación se exploran los pagos realizados por el alquiler de las películas agrupados por id de cliente" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "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", "
payment_idcustomer_idstaff_idrental_idamountpayment_date
017503341215207.992007-02-15 22:25:46.996577
117504341117781.992007-02-16 17:23:14.996577
217505341118497.992007-02-16 22:41:45.996577
317506341228292.992007-02-19 19:39:56.996577
417507341231307.992007-02-20 17:31:48.996577
517508341133825.992007-02-21 12:33:49.996577
617509342221905.992007-02-17 23:58:17.996577
717510342129145.992007-02-20 02:11:44.996577
817511342130812.992007-02-20 13:57:39.996577
917512343215474.992007-02-16 00:10:50.996577
\n", "
" ], "text/plain": [ " payment_id customer_id staff_id rental_id amount \\\n", "0 17503 341 2 1520 7.99 \n", "1 17504 341 1 1778 1.99 \n", "2 17505 341 1 1849 7.99 \n", "3 17506 341 2 2829 2.99 \n", "4 17507 341 2 3130 7.99 \n", "5 17508 341 1 3382 5.99 \n", "6 17509 342 2 2190 5.99 \n", "7 17510 342 1 2914 5.99 \n", "8 17511 342 1 3081 2.99 \n", "9 17512 343 2 1547 4.99 \n", "\n", " payment_date \n", "0 2007-02-15 22:25:46.996577 \n", "1 2007-02-16 17:23:14.996577 \n", "2 2007-02-16 22:41:45.996577 \n", "3 2007-02-19 19:39:56.996577 \n", "4 2007-02-20 17:31:48.996577 \n", "5 2007-02-21 12:33:49.996577 \n", "6 2007-02-17 23:58:17.996577 \n", "7 2007-02-20 02:11:44.996577 \n", "8 2007-02-20 13:57:39.996577 \n", "9 2007-02-16 00:10:50.996577 " ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Los primeros 10 registros en la tabla de Pagos\n", "pd.read_sql_query('SELECT * from Payment limit 10', cnx)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "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", "
customer_idtotalfirst_paymentlast_paymentpayment_count
0526220922007-02-15 04:42:11.9965772007-04-30 23:07:21.99657742
1576184322007-02-15 12:49:26.9965772007-05-14 13:44:29.99657732
2566181122007-02-16 06:55:22.9965772007-04-30 21:29:57.99657732
3595172552007-02-14 22:16:01.9965772007-04-30 22:25:20.99657729
4592171682007-02-14 21:41:12.9965772007-05-14 13:44:29.99657729
5550170502007-02-15 02:47:03.9965772007-05-14 13:44:29.99657731
6459169832007-02-17 01:19:17.9965772007-04-30 19:42:57.99657737
7522167042007-02-15 07:12:35.9965772007-04-30 23:51:41.99657732
8532164922007-02-16 11:08:49.9965772007-05-14 13:44:29.99657731
9469164152007-02-15 14:58:17.9965772007-04-30 18:27:08.99657735
\n", "
" ], "text/plain": [ " customer_id total first_payment last_payment \\\n", "0 526 22092 2007-02-15 04:42:11.996577 2007-04-30 23:07:21.996577 \n", "1 576 18432 2007-02-15 12:49:26.996577 2007-05-14 13:44:29.996577 \n", "2 566 18112 2007-02-16 06:55:22.996577 2007-04-30 21:29:57.996577 \n", "3 595 17255 2007-02-14 22:16:01.996577 2007-04-30 22:25:20.996577 \n", "4 592 17168 2007-02-14 21:41:12.996577 2007-05-14 13:44:29.996577 \n", "5 550 17050 2007-02-15 02:47:03.996577 2007-05-14 13:44:29.996577 \n", "6 459 16983 2007-02-17 01:19:17.996577 2007-04-30 19:42:57.996577 \n", "7 522 16704 2007-02-15 07:12:35.996577 2007-04-30 23:51:41.996577 \n", "8 532 16492 2007-02-16 11:08:49.996577 2007-05-14 13:44:29.996577 \n", "9 469 16415 2007-02-15 14:58:17.996577 2007-04-30 18:27:08.996577 \n", "\n", " payment_count \n", "0 42 \n", "1 32 \n", "2 32 \n", "3 29 \n", "4 29 \n", "5 31 \n", "6 37 \n", "7 32 \n", "8 31 \n", "9 35 " ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Los 10 primeros clientes que más han pagado, con la primera y la última fecha de pago\n", "pd.read_sql_query('''\n", "SELECT customer_id, sum(customer_id) as total, \n", " min(payment_date) as first_payment, max(payment_date) as last_payment, \n", " count(rental_id) as payment_count\n", "FROM Payment \n", "GROUP BY customer_id \n", "ORDER BY total desc\n", "LIMIT 10\n", "''', cnx)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "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", "
customer_idtotalfirst_paymentlast_paymentpayment_count
0526220922007-02-15 04:42:11.9965772007-04-30 23:07:21.99657742
1576184322007-02-15 12:49:26.9965772007-05-14 13:44:29.99657732
2566181122007-02-16 06:55:22.9965772007-04-30 21:29:57.99657732
3595172552007-02-14 22:16:01.9965772007-04-30 22:25:20.99657729
4592171682007-02-14 21:41:12.9965772007-05-14 13:44:29.99657729
..................
59461502007-02-16 02:10:04.9965772007-04-28 17:15:49.99657725
5954882007-02-15 07:59:54.9965772007-04-30 17:26:26.99657722
5963722007-02-16 00:02:31.9965772007-04-30 20:14:12.99657724
5972522007-02-17 19:23:24.9965772007-04-30 21:08:19.99657726
5981302007-02-14 23:22:38.9965772007-04-30 01:10:44.99657730
\n", "

599 rows × 5 columns

\n", "
" ], "text/plain": [ " customer_id total first_payment last_payment \\\n", "0 526 22092 2007-02-15 04:42:11.996577 2007-04-30 23:07:21.996577 \n", "1 576 18432 2007-02-15 12:49:26.996577 2007-05-14 13:44:29.996577 \n", "2 566 18112 2007-02-16 06:55:22.996577 2007-04-30 21:29:57.996577 \n", "3 595 17255 2007-02-14 22:16:01.996577 2007-04-30 22:25:20.996577 \n", "4 592 17168 2007-02-14 21:41:12.996577 2007-05-14 13:44:29.996577 \n", ".. ... ... ... ... \n", "594 6 150 2007-02-16 02:10:04.996577 2007-04-28 17:15:49.996577 \n", "595 4 88 2007-02-15 07:59:54.996577 2007-04-30 17:26:26.996577 \n", "596 3 72 2007-02-16 00:02:31.996577 2007-04-30 20:14:12.996577 \n", "597 2 52 2007-02-17 19:23:24.996577 2007-04-30 21:08:19.996577 \n", "598 1 30 2007-02-14 23:22:38.996577 2007-04-30 01:10:44.996577 \n", "\n", " payment_count \n", "0 42 \n", "1 32 \n", "2 32 \n", "3 29 \n", "4 29 \n", ".. ... \n", "594 25 \n", "595 22 \n", "596 24 \n", "597 26 \n", "598 30 \n", "\n", "[599 rows x 5 columns]" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Los el total de pago por cliente ordenados descendentemente, con la primera y la última fecha de pago\n", "datos = pd.read_sql_query('''\n", "SELECT customer_id, sum(customer_id) as total, \n", " min(payment_date) as first_payment, max(payment_date) as last_payment, count(rental_id) as payment_count\n", "FROM Payment \n", "GROUP BY customer_id \n", "ORDER BY total desc\n", "''', cnx)\n", "\n", "datos" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "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", "
customer_idtotalfirst_paymentlast_paymentpayment_count
0526220922007-02-15 04:42:11.9965772007-04-30 23:07:21.99657742
1576184322007-02-15 12:49:26.9965772007-05-14 13:44:29.99657732
2566181122007-02-16 06:55:22.9965772007-04-30 21:29:57.99657732
3595172552007-02-14 22:16:01.9965772007-04-30 22:25:20.99657729
4592171682007-02-14 21:41:12.9965772007-05-14 13:44:29.99657729
\n", "
" ], "text/plain": [ " customer_id total first_payment last_payment \\\n", "0 526 22092 2007-02-15 04:42:11.996577 2007-04-30 23:07:21.996577 \n", "1 576 18432 2007-02-15 12:49:26.996577 2007-05-14 13:44:29.996577 \n", "2 566 18112 2007-02-16 06:55:22.996577 2007-04-30 21:29:57.996577 \n", "3 595 17255 2007-02-14 22:16:01.996577 2007-04-30 22:25:20.996577 \n", "4 592 17168 2007-02-14 21:41:12.996577 2007-05-14 13:44:29.996577 \n", "\n", " payment_count \n", "0 42 \n", "1 32 \n", "2 32 \n", "3 29 \n", "4 29 " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#los primeros 5\n", "datos.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Ahora, veamos cómo se ve la distribución de pagos general en la población de clientes. Usando algunas de las capacidades de visualización integradas en Pandas, podemos generar un histograma simple de los pagos a través de matplotlib:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Nótese que se accede a los atributos de la \"tabla\", en este caso el dataframe, con el operador punto\n", "datos.total.hist()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Si quisiéramos hacer el gráfico un poco más detallado, podríamos usar bins=250 para aumentar el número de contenedores o de clases, dándonos un gráfico que se ve así:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "datos.total.hist(bins=250)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A continuación exploremos qué tan relacionados están linealmente el total de dinero pagado vs la cantidad de pagos realizados." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "datos.plot.scatter(x='total', y = 'payment_count')" ] } ], "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.5" } }, "nbformat": 4, "nbformat_minor": 4 }