Last active
June 1, 2020 02:19
-
-
Save WittmannF/367ced99488d59049cfa6019e480b941 to your computer and use it in GitHub Desktop.
BI-wp-familia.ipynb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"nbformat": 4, | |
"nbformat_minor": 0, | |
"metadata": { | |
"colab": { | |
"name": "BI-wp-familia.ipynb", | |
"provenance": [], | |
"collapsed_sections": [], | |
"include_colab_link": true | |
}, | |
"kernelspec": { | |
"name": "python3", | |
"display_name": "Python 3" | |
} | |
}, | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "view-in-github", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"<a href=\"https://colab.research.google.com/gist/WittmannF/367ced99488d59049cfa6019e480b941/bi-wp-familia.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "nsypOT_6o1-S", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"# Análise de Dados das Mensagens de Bom Dia do WhatsApp da Família\n", | |
"> **OBS:** Antes de executar o código, certifique-se de baixar a base de dados de conversa do grupo que deseja analizar e salvar no Google Drive em uma pasta chamada `familia-grupo-whatsapp`.\n", | |
"\n", | |
"Como um bom cientista de dados decidi entreter o grupo de minha família com informações sobre a movimentação no grupo. Em especial, decidi focar nos bom dias, ação praticamente religiosa tomada diariamente por muitos dos membros. Neste post estarei descrevendo passo a passo como estarei fazendo esta análise e pode servir como tutorial para quem quiser replicar para o grupo de sua família. Aliás estou escrevendo este post em paralelo à realização da análise, portanto, ainda não sei quais serão os resultados. E para deixar claro: minha intenção aqui não é desincentivar tal pratica. Afinal, a mesma é um sinal de um laço presente e contiamente reforçado entre os familiares. Por hora, meu plano de ação é:\n", | |
"- Baixar o log de dados de conversa do grupo\n", | |
"- Usando Python, extrair a partir do log de conversas e criar uma base de dados com as seguintes colunas: Data, Hora, Quem deu bom dia\n", | |
"\n", | |
"A partir dessa base de dados quero extrair algumas informações, talvez usando pivots do google sheets ou o pacote pandas do Python, como por exemplo:\n", | |
"- Número total de bom dias\n", | |
"- Média do horário que os bom dias são dados\n", | |
"- Os madrugadores da família (quem dá bom dia mais cedo em média)\n", | |
"- Os tardões da família (quem dá bom dia mais tarde em média)\n", | |
"- Os top 10 bom dias mais cedos já dados no grupo\n", | |
"- Os top 10 bom dias mais tardes já dados\n", | |
"- Quem deu mais bom dias no grupo\n", | |
"- **ATUALIZAÇÃO:** Anonimizei os contatos para evitar encrencas com os familiares por tornar público os dorminhocos 😅\n", | |
"\n", | |
"E por aí vai. Por simplificação, estarei frequentemente me referindo à sigla BD para bom dia. Sem mais delongas, vamos começar.\n", | |
"\n", | |
"## Baixando o log de conversas do grupo\n", | |
"Esta parte é bem simples, basta ir no menu do grupo > mais > exportar chat. A base de dados (juntamente com outros arquivos) estará salva em um arquivo .txt.\n", | |
"\n", | |
"Em seguida salvei o log em uma pasta do Google Drive pela qual estarei acessando aqui. Primeiramente vou montar o Google Drive:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "0PChTVT2rJ-y", | |
"colab_type": "code", | |
"outputId": "6ad25059-9cb6-4c64-dd25-de95201d5fb6", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 104 | |
} | |
}, | |
"source": [ | |
"# Montar o Google Drive\n", | |
"!pip install easycolab\n", | |
"import easycolab as ec\n", | |
"ec.mount()" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Requirement already satisfied: easycolab in /usr/local/lib/python3.6/dist-packages (0.1b29)\n", | |
"Drive already mounted at /content/gdrive; to attempt to forcibly remount, call drive.mount(\"/content/gdrive\", force_remount=True).\n", | |
"Opening directory /content/gdrive/My Drive/\n", | |
"Done!\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "gh6e0Az0Hw2m", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Agora vou acessar a pasta que salvei as mensagens e dar uma olhada no arquivo:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "cogJzi6FHdNj", | |
"colab_type": "code", | |
"outputId": "61ba39ce-a3e9-4121-b65c-b0101182af78", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 34 | |
} | |
}, | |
"source": [ | |
"cd familia-grupo-whatsapp" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"/content/gdrive/My Drive/familia-grupo-whatsapp\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "KmS7U2OEUrAg", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"FILENAME = 'WhatsApp Chat with Família Wittmann & CIA.txt'\n", | |
"with open(FILENAME) as f:\n", | |
" txt = ''.join(f.readlines())" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "A7mDeM3J9B1v", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Vamos dar uma olhada nos últimos 200 caracteres do arquivo (anonimizei os nomes):" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "ZZ7rE1cJ7nE9", | |
"colab_type": "code", | |
"outputId": "c3859fe3-5743-4cf3-a7b6-32fb6d934ca9", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 118 | |
} | |
}, | |
"source": [ | |
"import re\n", | |
"print(re.sub(\"- (.*):\", \"xxxx\", txt[-200:]))" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"xxxx Bom dia\n", | |
"10/27/19, 8:50 AM xxxx Bom dia feliz domingo\n", | |
"10/27/19, 8:52 AM xxxx Bom dia\n", | |
"10/27/19, 10:25 AM xxxx Bom dia\n", | |
"10/27/19, 10:28 AM xxxx Bom dia\n", | |
"\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "TY1Z3XEQ9Glq", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Agora vamos extrair todos os bom dias utilizando regex:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "ARjUW_8IUrv6", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"import re\n", | |
"PATTERN = '(.*), (.*) - (.*): [bB]om dia'\n", | |
"\n", | |
"db = re.findall(PATTERN, txt)" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "KQZVLbqa9NYC", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Uma lista de tuplas contendo data, horário e contato de quem deu bom dia foi criado. O padrão regex para extração destas informações foi criado utilizando o [regexr.com](https://regexr.com/). De forma a fazer algumas análises, vamos converter esta lista para um DataFrame do Pandas. " | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "PosnSygN9qxv", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"import pandas as pd\n", | |
"\n", | |
"df = pd.DataFrame(db, columns=['Data', 'Hora', 'Deu BD'])" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "ggbfVC8h9xWj", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Em seguida, vou criar baixar um gerador aleatório de nomes para anonimizar os contatos:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "i_4DjfPu9NQ1", | |
"colab_type": "code", | |
"outputId": "b152e284-f023-4aa5-e876-cfb421671843", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 50 | |
} | |
}, | |
"source": [ | |
"!pip install names\n", | |
"import names\n", | |
"nome_aleatorio=names.get_full_name()\n", | |
"print(f\"Gerando nome aleatório: {nome_aleatorio}\")" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Requirement already satisfied: names in /usr/local/lib/python3.6/dist-packages (0.3.0)\n", | |
"Gerando nome aleatório: Paul Shelby\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "q2mdOOtF9Sdg", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"contatos = df['Deu BD'].unique()\n", | |
"\n", | |
"contatos_anonimizados = {}\n", | |
"for c in contatos:\n", | |
" contatos_anonimizados[c]=names.get_full_name()" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "q4woqyIz-dpQ", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Por exemplo, vamos ver para qual nome o meu pai foi anonimizado:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "slmVoTxZ-hW5", | |
"colab_type": "code", | |
"outputId": "b3f44e47-eb16-465d-ab18-5bb5dd2a58df", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 34 | |
} | |
}, | |
"source": [ | |
"contatos_anonimizados['Pai']" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"'Frederick Elio'" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 9 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "p3egS1Eg2Ofb", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Infelizmente, o gênero do nome acabará não sendo preservado. É o melhor que temos para o momento. Por fim, vou aplicar a função aos contatos:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "yn9rviNvVDD8", | |
"colab_type": "code", | |
"outputId": "e7432bff-ca41-48d7-e31a-0ff86a56773c", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 195 | |
} | |
}, | |
"source": [ | |
"df['Deu BD'] = df['Deu BD'].apply(lambda x: contatos_anonimizados[x])\n", | |
"df.head()" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Data</th>\n", | |
" <th>Hora</th>\n", | |
" <th>Deu BD</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>9/1/16</td>\n", | |
" <td>6:38 AM</td>\n", | |
" <td>Byron Gibson</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>9/1/16</td>\n", | |
" <td>6:48 AM</td>\n", | |
" <td>Lucila Daniels</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>9/1/16</td>\n", | |
" <td>6:51 AM</td>\n", | |
" <td>Roy Dejong</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>3</th>\n", | |
" <td>9/1/16</td>\n", | |
" <td>7:01 AM</td>\n", | |
" <td>Maria Toth</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4</th>\n", | |
" <td>9/1/16</td>\n", | |
" <td>7:05 AM</td>\n", | |
" <td>Ronald Ramsey</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" Data Hora Deu BD\n", | |
"0 9/1/16 6:38 AM Byron Gibson\n", | |
"1 9/1/16 6:48 AM Lucila Daniels\n", | |
"2 9/1/16 6:51 AM Roy Dejong\n", | |
"3 9/1/16 7:01 AM Maria Toth\n", | |
"4 9/1/16 7:05 AM Ronald Ramsey" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 10 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "QtLcSK6x9pXx", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Vamos agora para algumas análises, primeiramente algumas estatísticas iniciais:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "W8cEtf3uY_Rm", | |
"colab_type": "code", | |
"outputId": "dc2dc308-1cc1-4a8f-e830-3f31119f65f9", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 166 | |
} | |
}, | |
"source": [ | |
"df.describe()" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Data</th>\n", | |
" <th>Hora</th>\n", | |
" <th>Deu BD</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>count</th>\n", | |
" <td>10350</td>\n", | |
" <td>10350</td>\n", | |
" <td>10350</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>unique</th>\n", | |
" <td>1129</td>\n", | |
" <td>538</td>\n", | |
" <td>66</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>top</th>\n", | |
" <td>12/26/16</td>\n", | |
" <td>6:55 AM</td>\n", | |
" <td>Donya Waddill</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>freq</th>\n", | |
" <td>18</td>\n", | |
" <td>89</td>\n", | |
" <td>993</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" Data Hora Deu BD\n", | |
"count 10350 10350 10350\n", | |
"unique 1129 538 66\n", | |
"top 12/26/16 6:55 AM Donya Waddill\n", | |
"freq 18 89 993" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 11 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "vilH8IEv9tnK", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"O número de bom dias dados foi 10mil. Nesta base estão contidos os últimos 3 anos (mais precisamente 1129 dias, como podemos conferir no elemento **unique** da coluna **Data**). O número de pessoas que deram BDs é 66. Vamos agora ver quem deu mais bom dia na família:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "4J0TS0MqZ9sq", | |
"colab_type": "code", | |
"outputId": "40556eb9-dec0-43ea-c6e7-416b92481bb0", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 202 | |
} | |
}, | |
"source": [ | |
"df['Deu BD'].value_counts().head(10)" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"Donya Waddill 993\n", | |
"Ladonna Duvall 912\n", | |
"Roy Dejong 891\n", | |
"Lucila Daniels 856\n", | |
"Frederick Elio 770\n", | |
"Vicki Main 695\n", | |
"Sammy Ludgate 526\n", | |
"Maria Toth 525\n", | |
"Oscar Miller 440\n", | |
"Kathleen Sanders 362\n", | |
"Name: Deu BD, dtype: int64" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 12 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "kp5t4MvEEPyM", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Tio Waddill é o campeão com 993 BDs. Em segundo lugar vem o primo Duvall com 912 BDs. Vamos plotar em um gráfico estes resultados:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "BmUknw7W4g4f", | |
"colab_type": "code", | |
"outputId": "a4f357be-048b-44ce-82db-7a463dc84b23", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 360 | |
} | |
}, | |
"source": [ | |
"df['Deu BD'].value_counts()[:10].plot.bar()" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"<matplotlib.axes._subplots.AxesSubplot at 0x7f0c57adf630>" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 13 | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAFGCAYAAACGxE8/AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0\ndHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nO3deZjkVXn28e/NILvsE2JYHCSIUSNK\nRkRRIxKNCAgGVIgGQlBMohHFaPDVK7gkRlyCSyIGRQQXFAUDIkIQRRQDMuDINi4TlE3QQREVFAHv\n949zarq6p7tHprtOFfW7P9fVV1f9qmrOMzPdT506y3Nkm4iI6Ia1hh1ARES0k6QfEdEhSfoRER2S\npB8R0SFJ+hERHbL2sAOYzZZbbulFixYNO4yIiAeUyy+//DbbC6d7bKST/qJFi1iyZMmww4iIeECR\ndP1Mj2V4JyKiQ5L0IyI6JEk/IqJDkvQjIjpktUlf0ocl/VjS1X3XNpd0vqTv1e+b1euS9F5JyyVd\nKWmXvtccWp//PUmHDuavExERs/ldevofAZ415drRwAW2dwQuqPcB9gJ2rF9HAMdDeZMAjgGeAOwK\nHNN7o4iIiHZWm/RtXwT8dMrl/YCT6+2Tgf37rp/i4hJgU0kPAf4cON/2T23fDpzPqm8kERExYGs6\npr+V7Vvq7VuBrertrYEb+553U7020/VVSDpC0hJJS1asWLGG4UVExHTmPJHrUpB/3ory2z7B9mLb\nixcunHZDWURErKE13ZH7I0kPsX1LHb75cb1+M7Bt3/O2qdduBp425fqFa9j2JIuO/vycXv+Dt+09\nH2FERDwgrGlP/yygtwLnUODMvuuH1FU8uwF31GGg84BnStqsTuA+s16LiIiGVtvTl3QqpZe+paSb\nKKtw3gacJulw4Hrg+fXp5wDPBpYDdwGHAdj+qaS3AJfV573Z9tTJ4YiIGLDVJn3bB8/w0J7TPNfA\ny2b4cz4MfPh+RRcREfMqO3IjIjokST8iokOS9CMiOiRJPyKiQ5L0IyI6JEk/IqJDkvQjIjokST8i\nokOS9CMiOiRJPyKiQ5L0IyI6JEk/IqJD1rSefvSZa01/SF3/iGgjPf2IiA5J0o+I6JAk/YiIDknS\nj4jokEzkjpEcEh8Rq5OefkREhyTpR0R0SJJ+RESHJOlHRHRIkn5ERIck6UdEdEiWbMa8Sh2iiNGW\nnn5ERIck6UdEdEiSfkREhyTpR0R0SJJ+RESHJOlHRHRIkn5ERIck6UdEdMickr6kV0m6RtLVkk6V\ntJ6k7SVdKmm5pE9JWqc+d916f3l9fNF8/AUiIuJ3t8ZJX9LWwCuAxbYfDSwADgKOBY6z/YfA7cDh\n9SWHA7fX68fV50VERENzHd5ZG1hf0trABsAtwNOBz9THTwb2r7f3q/epj+8pSXNsPyIi7oc1Tvq2\nbwbeCdxASfZ3AJcDP7N9b33aTcDW9fbWwI31tffW528x9c+VdISkJZKWrFixYk3Di4iIacxleGcz\nSu99e+APgA2BZ801INsn2F5se/HChQvn+sdFRESfuQzv/BnwfdsrbN8DnAHsDmxah3sAtgFurrdv\nBrYFqI9vAvxkDu1HRMT9NJekfwOwm6QN6tj8nsC1wJeBA+tzDgXOrLfPqvepj3/JtufQfkRE3E9z\nGdO/lDIhewVwVf2zTgD+CThK0nLKmP2J9SUnAlvU60cBR88h7oiIWANzOkTF9jHAMVMuXwfsOs1z\nfw08by7tRUTE3OTkrBhLcz3BK6d3xbhKGYaIiA5J0o+I6JAk/YiIDknSj4jokCT9iIgOSdKPiOiQ\nJP2IiA5J0o+I6JAk/YiIDknSj4jokCT9iIgOSdKPiOiQJP2IiA5J0o+I6JAk/YiIDkk9/YgBmWtN\nf0hd/5h/6elHRHRIkn5ERIck6UdEdEiSfkREhyTpR0R0SJJ+RESHJOlHRHRIkn5ERIck6UdEdEiS\nfkREhyTpR0R0SJJ+RESHJOlHRHRIkn5ERIck6UdEdEiSfkREh8wp6UvaVNJnJH1b0jJJT5S0uaTz\nJX2vft+sPleS3itpuaQrJe0yP3+FiIj4Xc21p/8e4FzbjwB2BpYBRwMX2N4RuKDeB9gL2LF+HQEc\nP8e2IyLiflrjpC9pE+CpwIkAtn9j+2fAfsDJ9WknA/vX2/sBp7i4BNhU0kPWOPKIiLjf5tLT3x5Y\nAZwk6ZuSPiRpQ2Ar27fU59wKbFVvbw3c2Pf6m+q1SSQdIWmJpCUrVqyYQ3gRETHVXJL+2sAuwPG2\nHwfcycRQDgC2Dfj+/KG2T7C92PbihQsXziG8iIiYai5J/ybgJtuX1vufobwJ/Kg3bFO//7g+fjOw\nbd/rt6nXIiKikTVO+rZvBW6UtFO9tCdwLXAWcGi9dihwZr19FnBIXcWzG3BH3zBQREQ0sPYcX/8P\nwMclrQNcBxxGeSM5TdLhwPXA8+tzzwGeDSwH7qrPjYiIhuaU9G0vBRZP89Ce0zzXwMvm0l5ERMxN\nduRGRHRIkn5ERIck6UdEdEiSfkREhyTpR0R0SJJ+RESHJOlHRHRIkn5ERIck6UdEdMhcyzBExIhb\ndPTn5/T6H7xt76HHMF9xRHr6ERGdkqQfEdEhSfoRER2SpB8R0SFJ+hERHZKkHxHRIUn6EREdkqQf\nEdEhSfoRER2SpB8R0SFJ+hERHZKkHxHRIUn6EREdkqQfEdEhSfoRER2SpB8R0SFJ+hERHZKTsyKi\nM0bhFLFhS08/IqJDkvQjIjokST8iokOS9CMiOmTOSV/SAknflHR2vb+9pEslLZf0KUnr1Ovr1vvL\n6+OL5tp2RETcP/PR0z8SWNZ3/1jgONt/CNwOHF6vHw7cXq8fV58XERENzSnpS9oG2Bv4UL0v4OnA\nZ+pTTgb2r7f3q/epj+9Znx8REY3Mtaf/buC1wG/r/S2An9m+t96/Cdi63t4auBGgPn5Hff4kko6Q\ntETSkhUrVswxvIiI6LfGSV/SPsCPbV8+j/Fg+wTbi20vXrhw4Xz+0RERnTeXHbm7A8+R9GxgPWBj\n4D3AppLWrr35bYCb6/NvBrYFbpK0NrAJ8JM5tB8REffTGvf0bb/O9ja2FwEHAV+y/ULgy8CB9WmH\nAmfW22fV+9THv2Tba9p+RETcf4NYp/9PwFGSllPG7E+s108EtqjXjwKOHkDbERExi3kpuGb7QuDC\nevs6YNdpnvNr4Hnz0V5ERKyZ7MiNiOiQJP2IiA5JPf2IiIbmWtMf5lbXPz39iIgOSdKPiOiQJP2I\niA5J0o+I6JAk/YiIDknSj4jokCT9iIgOSdKPiOiQJP2IiA5J0o+I6JAk/YiIDknSj4jokCT9iIgO\nSdKPiOiQJP2IiA5J0o+I6JAk/YiIDknSj4jokCT9iIgOSdKPiOiQJP2IiA5J0o+I6JAk/YiIDknS\nj4jokCT9iIgOSdKPiOiQJP2IiA5J0o+I6JAk/YiIDknSj4jokDVO+pK2lfRlSddKukbSkfX65pLO\nl/S9+n2zel2S3itpuaQrJe0yX3+JiIj43cylp38v8GrbjwR2A14m6ZHA0cAFtncELqj3AfYCdqxf\nRwDHz6HtiIhYA2uc9G3fYvuKevsXwDJga2A/4OT6tJOB/evt/YBTXFwCbCrpIWsceURE3G/zMqYv\naRHwOOBSYCvbt9SHbgW2qre3Bm7se9lN9drUP+sISUskLVmxYsV8hBcREdWck76kjYDTgVfa/nn/\nY7YN+P78ebZPsL3Y9uKFCxfONbyIiOgzp6Qv6UGUhP9x22fUyz/qDdvU7z+u128Gtu17+Tb1WkRE\nNDKX1TsCTgSW2f73vofOAg6ttw8Fzuy7fkhdxbMbcEffMFBERDSw9hxeuzvwV8BVkpbWa/8PeBtw\nmqTDgeuB59fHzgGeDSwH7gIOm0PbERGxBtY46dv+GqAZHt5zmucbeNmathcREXOXHbkRER2SpB8R\n0SFJ+hERHZKkHxHRIUn6EREdkqQfEdEhSfoRER2SpB8R0SFJ+hERHZKkHxHRIUn6EREdkqQfEdEh\nSfoRER2SpB8R0SFJ+hERHZKkHxHRIUn6EREdkqQfEdEhSfoRER2SpB8R0SFJ+hERHZKkHxHRIUn6\nEREdkqQfEdEhSfoRER2SpB8R0SFJ+hERHZKkHxHRIUn6EREdkqQfEdEhSfoRER2SpB8R0SFJ+hER\nHdI86Ut6lqTvSFou6ejW7UdEdFnTpC9pAfCfwF7AI4GDJT2yZQwREV3Wuqe/K7Dc9nW2fwN8Etiv\ncQwREZ0l2+0akw4EnmX7xfX+XwFPsP3yvuccARxR7+4EfGeOzW4J3DbHP2M+jEIcoxADjEYciWHC\nKMQxCjHAaMQxHzE81PbC6R5Ye45/8LyzfQJwwnz9eZKW2F48X3/eAzmOUYhhVOJIDKMVxyjEMCpx\nDDqG1sM7NwPb9t3fpl6LiIgGWif9y4AdJW0vaR3gIOCsxjFERHRW0+Ed2/dKejlwHrAA+LDtawbc\n7LwNFc3RKMQxCjHAaMSRGCaMQhyjEAOMRhwDjaHpRG5ERAxXduRGRHRIkn5ERIck6UdTkjaT9Jhh\nxxEhaS1Jzx92HK2NzZi+pM8BM/5lbD+nYTgjQdJR01y+A7jc9tKGcVwIPIeycOBy4MfAxbani2+Q\ncWwFPL7e/YbtH7dsv8awANiKvkUUtm9oHMNWwFuBP7C9Vy2F8kTbJzaOY1dgEZP/LT7ROIZRWJe/\nO7DU9p2SXgTsArzH9vUDaW+Mkv6fzva47a80iuMXTP/moxKGN24RR43lE8Bi4HP10j7AlZRftE/b\nfnujOL5p+3GSXgxsa/sYSVfabtbjrz26dwAXUv4vngK8xvZnGsbwD8AxwI+A39bLbvnvUOP4AnAS\n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\nAAAAAElFTkSuQmCC\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "Ceo_O--R0Cqi", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Para ficar mais fácil tirar informações referentes aos horários dos BDs, vamos adicionar uma coluna com o horário convertido para um número fracionário (por exemplo 6:30AM tornaria-se 6.5). Precisarei adicionar algumas condicionais para corretamente converter 12:30AM (meia noite e meia) para 0.5 e 12:30 PM (meio dia e meia) para 12.5:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "vMJvQkSYK3f1", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"def convert_para_frac(horario):\n", | |
" hora = int(re.findall(\"(.*):\", horario)[0])\n", | |
" minuto = float(re.findall(\":(.*) \", horario)[0])\n", | |
" minuto_frac = minuto/60\n", | |
" if \"AM\" in horario:\n", | |
" if hora==12:\n", | |
" return minuto_frac\n", | |
" else:\n", | |
" return hora+minuto_frac\n", | |
" else:\n", | |
" if hora==12:\n", | |
" return hora+minuto_frac\n", | |
" else:\n", | |
" return hora+minuto_frac+12" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "v57ae3U0O0Ok", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Vamos testar a conversão de alguns horários:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "_q9c9fiUK30a", | |
"colab_type": "code", | |
"outputId": "c5c074be-14e3-40e8-e0de-0ce57b687d78", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 84 | |
} | |
}, | |
"source": [ | |
"lista_de_horarios=['12:30 AM', '12:30 PM', '6:45 AM', '2:15 PM']\n", | |
"\n", | |
"for h in lista_de_horarios:\n", | |
" print(f'{h} foi convertido para {convert_para_frac(h)}')" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"12:30 AM foi convertido para 0.5\n", | |
"12:30 PM foi convertido para 12.5\n", | |
"6:45 AM foi convertido para 6.75\n", | |
"2:15 PM foi convertido para 14.25\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "Q3h2VYokyV_t", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Vamos agora adicionar uma nova coluna com o horário fracionado." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "pPx-5rJbaoz0", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"df['Hora Frac'] = df['Hora'].apply(convert_para_frac)" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "-U8AIgOj1Gou", | |
"colab_type": "code", | |
"outputId": "6f32b5d8-5bc8-46ed-bf76-9c927f61485f", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 195 | |
} | |
}, | |
"source": [ | |
"df.head()" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Data</th>\n", | |
" <th>Hora</th>\n", | |
" <th>Deu BD</th>\n", | |
" <th>Hora Frac</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>9/1/16</td>\n", | |
" <td>6:38 AM</td>\n", | |
" <td>Byron Gibson</td>\n", | |
" <td>6.633333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>9/1/16</td>\n", | |
" <td>6:48 AM</td>\n", | |
" <td>Lucila Daniels</td>\n", | |
" <td>6.800000</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>9/1/16</td>\n", | |
" <td>6:51 AM</td>\n", | |
" <td>Roy Dejong</td>\n", | |
" <td>6.850000</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>3</th>\n", | |
" <td>9/1/16</td>\n", | |
" <td>7:01 AM</td>\n", | |
" <td>Maria Toth</td>\n", | |
" <td>7.016667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4</th>\n", | |
" <td>9/1/16</td>\n", | |
" <td>7:05 AM</td>\n", | |
" <td>Ronald Ramsey</td>\n", | |
" <td>7.083333</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" Data Hora Deu BD Hora Frac\n", | |
"0 9/1/16 6:38 AM Byron Gibson 6.633333\n", | |
"1 9/1/16 6:48 AM Lucila Daniels 6.800000\n", | |
"2 9/1/16 6:51 AM Roy Dejong 6.850000\n", | |
"3 9/1/16 7:01 AM Maria Toth 7.016667\n", | |
"4 9/1/16 7:05 AM Ronald Ramsey 7.083333" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 17 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "m3220vH-yeVp", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Vou também criar uma função para converter horários fracionados para normal. Será útil posteriormente:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "ppczK4axykZa", | |
"colab_type": "code", | |
"outputId": "fb6f730e-da45-4597-92f4-953f8bd1f584", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 84 | |
} | |
}, | |
"source": [ | |
"def frac_para_normal(horario):\n", | |
" hora = int(horario)\n", | |
" minuto = int((horario-hora)*60)\n", | |
" return f'{hora}:{minuto}'\n", | |
"\n", | |
"horarios_fracionados=[0.5, 12.62, 7.76, 14.9]\n", | |
"\n", | |
"for h in horarios_fracionados:\n", | |
" print(f'{h} foi convertido para {frac_para_normal(h)}')" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"0.5 foi convertido para 0:30\n", | |
"12.62 foi convertido para 12:37\n", | |
"7.76 foi convertido para 7:45\n", | |
"14.9 foi convertido para 14:54\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "MX1JPoav5hIw", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"## Análise dos horários\n", | |
"Vamos para algumas análises utilizando os horários. Primeiramente os recordes de quem deu bom dia mais cedo e mais tarde:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "zoMw5h2G5fL-", | |
"colab_type": "code", | |
"outputId": "9e5cf4e3-cc06-404e-f0f7-fde5efd2697f", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 343 | |
} | |
}, | |
"source": [ | |
"df.sort_values('Hora Frac').head(10)" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Data</th>\n", | |
" <th>Hora</th>\n", | |
" <th>Deu BD</th>\n", | |
" <th>Hora Frac</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>177</th>\n", | |
" <td>9/18/16</td>\n", | |
" <td>1:01 AM</td>\n", | |
" <td>Daniel Tucker</td>\n", | |
" <td>1.016667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1067</th>\n", | |
" <td>12/11/16</td>\n", | |
" <td>1:25 AM</td>\n", | |
" <td>Daniel Tucker</td>\n", | |
" <td>1.416667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1068</th>\n", | |
" <td>12/11/16</td>\n", | |
" <td>1:29 AM</td>\n", | |
" <td>Derick Markowitz</td>\n", | |
" <td>1.483333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4806</th>\n", | |
" <td>12/24/17</td>\n", | |
" <td>1:33 AM</td>\n", | |
" <td>Kathleen Sanders</td>\n", | |
" <td>1.550000</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1069</th>\n", | |
" <td>12/11/16</td>\n", | |
" <td>1:56 AM</td>\n", | |
" <td>Michael Maillet</td>\n", | |
" <td>1.933333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1673</th>\n", | |
" <td>2/10/17</td>\n", | |
" <td>1:57 AM</td>\n", | |
" <td>Mary Birge</td>\n", | |
" <td>1.950000</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1070</th>\n", | |
" <td>12/11/16</td>\n", | |
" <td>1:57 AM</td>\n", | |
" <td>Oscar Miller</td>\n", | |
" <td>1.950000</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>9752</th>\n", | |
" <td>8/11/19</td>\n", | |
" <td>1:59 AM</td>\n", | |
" <td>Donya Waddill</td>\n", | |
" <td>1.983333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1286</th>\n", | |
" <td>1/1/17</td>\n", | |
" <td>3:21 AM</td>\n", | |
" <td>Kathleen Sanders</td>\n", | |
" <td>3.350000</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1287</th>\n", | |
" <td>1/1/17</td>\n", | |
" <td>3:22 AM</td>\n", | |
" <td>Raul Medina</td>\n", | |
" <td>3.366667</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" Data Hora Deu BD Hora Frac\n", | |
"177 9/18/16 1:01 AM Daniel Tucker 1.016667\n", | |
"1067 12/11/16 1:25 AM Daniel Tucker 1.416667\n", | |
"1068 12/11/16 1:29 AM Derick Markowitz 1.483333\n", | |
"4806 12/24/17 1:33 AM Kathleen Sanders 1.550000\n", | |
"1069 12/11/16 1:56 AM Michael Maillet 1.933333\n", | |
"1673 2/10/17 1:57 AM Mary Birge 1.950000\n", | |
"1070 12/11/16 1:57 AM Oscar Miller 1.950000\n", | |
"9752 8/11/19 1:59 AM Donya Waddill 1.983333\n", | |
"1286 1/1/17 3:21 AM Kathleen Sanders 3.350000\n", | |
"1287 1/1/17 3:22 AM Raul Medina 3.366667" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 19 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "VqhphVmqmK7c", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"O campeão deu bom dia 1 da manhã! E os top 10 deram bom dias antes das 3 e meia da manhã. Vamos ver agora quem deu BD mais tarde:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "Qyrk1Aca6tXJ", | |
"colab_type": "code", | |
"outputId": "e24d5ec7-83cb-44fa-d0a8-a7a25985f744", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 343 | |
} | |
}, | |
"source": [ | |
"df.sort_values('Hora Frac', ascending=False).head(10)" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Data</th>\n", | |
" <th>Hora</th>\n", | |
" <th>Deu BD</th>\n", | |
" <th>Hora Frac</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>176</th>\n", | |
" <td>9/17/16</td>\n", | |
" <td>9:35 PM</td>\n", | |
" <td>Barbara Mestad</td>\n", | |
" <td>21.583333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>5939</th>\n", | |
" <td>4/29/18</td>\n", | |
" <td>9:34 PM</td>\n", | |
" <td>Roy Dejong</td>\n", | |
" <td>21.566667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4331</th>\n", | |
" <td>10/30/17</td>\n", | |
" <td>8:28 PM</td>\n", | |
" <td>Lucila Daniels</td>\n", | |
" <td>20.466667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2698</th>\n", | |
" <td>5/23/17</td>\n", | |
" <td>7:34 PM</td>\n", | |
" <td>Lucila Daniels</td>\n", | |
" <td>19.566667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1702</th>\n", | |
" <td>2/12/17</td>\n", | |
" <td>5:43 PM</td>\n", | |
" <td>Ronald Young</td>\n", | |
" <td>17.716667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1186</th>\n", | |
" <td>12/23/16</td>\n", | |
" <td>5:39 PM</td>\n", | |
" <td>Cesar Stokes</td>\n", | |
" <td>17.650000</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1370</th>\n", | |
" <td>1/9/17</td>\n", | |
" <td>5:26 PM</td>\n", | |
" <td>Ladonna Duvall</td>\n", | |
" <td>17.433333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>660</th>\n", | |
" <td>10/29/16</td>\n", | |
" <td>5:23 PM</td>\n", | |
" <td>Sammy Ludgate</td>\n", | |
" <td>17.383333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2836</th>\n", | |
" <td>6/4/17</td>\n", | |
" <td>5:00 PM</td>\n", | |
" <td>Lucila Daniels</td>\n", | |
" <td>17.000000</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2131</th>\n", | |
" <td>3/26/17</td>\n", | |
" <td>4:16 PM</td>\n", | |
" <td>Sammy Ludgate</td>\n", | |
" <td>16.266667</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" Data Hora Deu BD Hora Frac\n", | |
"176 9/17/16 9:35 PM Barbara Mestad 21.583333\n", | |
"5939 4/29/18 9:34 PM Roy Dejong 21.566667\n", | |
"4331 10/30/17 8:28 PM Lucila Daniels 20.466667\n", | |
"2698 5/23/17 7:34 PM Lucila Daniels 19.566667\n", | |
"1702 2/12/17 5:43 PM Ronald Young 17.716667\n", | |
"1186 12/23/16 5:39 PM Cesar Stokes 17.650000\n", | |
"1370 1/9/17 5:26 PM Ladonna Duvall 17.433333\n", | |
"660 10/29/16 5:23 PM Sammy Ludgate 17.383333\n", | |
"2836 6/4/17 5:00 PM Lucila Daniels 17.000000\n", | |
"2131 3/26/17 4:16 PM Sammy Ludgate 16.266667" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 20 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "eeu5ReAWAUA9", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"O campeão deu bom dia as 9 e 35 da noite! E os top 10 deram bom dias após as 4 da tarde! Antes tarde do que nunca, não é mesmo gente? Vamos agora ver a média dos BDs:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "W7N86PEkIukL", | |
"colab_type": "code", | |
"outputId": "452fa583-6929-4fc9-9669-4a6848b2e92d", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 34 | |
} | |
}, | |
"source": [ | |
"media_bomdia=df['Hora Frac'].mean();media_bomdia" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"7.8886151368759805" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 21 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "q1w0Fchu3Zov", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"E também a distribuição dos bom dias:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "1zjABHZZn1OV", | |
"colab_type": "code", | |
"outputId": "1bf2de7a-ae19-4ba1-9958-b2d992dd1d75", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 282 | |
} | |
}, | |
"source": [ | |
"df['Hora Frac'].hist(bins=100)" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"<matplotlib.axes._subplots.AxesSubplot at 0x7f0c5665aa58>" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 22 | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "3doMXvjy3h9Y", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Por fim o desvio padrão:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "X85nGlGD3hQ_", | |
"colab_type": "code", | |
"outputId": "71de5403-404f-416a-9e48-c7fc2898a818", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 34 | |
} | |
}, | |
"source": [ | |
"std_bomdia=df['Hora Frac'].std();std_bomdia" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"1.3861465059788622" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 23 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "9EMxkNFG3q6m", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Portanto, 95% dos BDs estão entre:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "hAsfwjHr3uR8", | |
"colab_type": "code", | |
"outputId": "54916020-7be1-44a9-c1c1-4036d9f1165d", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 50 | |
} | |
}, | |
"source": [ | |
"print(media_bomdia-2*std_bomdia)\n", | |
"print(media_bomdia+2*std_bomdia)" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"5.1163221249182556\n", | |
"10.660908148833705\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "JiSRpcN33_0A", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"### Madrugadores da família\n", | |
"Aqueles que em média deram bom dia mais cedo:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "7A71ccV5sSz5", | |
"colab_type": "code", | |
"outputId": "47e7dd7a-8bde-41f6-d45d-789c727a7d8e", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 373 | |
} | |
}, | |
"source": [ | |
"df.groupby('Deu BD').mean().sort_values('Hora Frac').head(10)" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Hora Frac</th>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Deu BD</th>\n", | |
" <th></th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>Lisa Zecca</th>\n", | |
" <td>5.458333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Lisa Johnson</th>\n", | |
" <td>5.850000</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Christie Wells</th>\n", | |
" <td>6.066667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Byron Gibson</th>\n", | |
" <td>6.356978</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Donya Waddill</th>\n", | |
" <td>6.731403</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Larry Andrade</th>\n", | |
" <td>6.994444</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Carol Butler</th>\n", | |
" <td>7.007292</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>David Vegetabile</th>\n", | |
" <td>7.091667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Mary Birge</th>\n", | |
" <td>7.112667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Lucila Daniels</th>\n", | |
" <td>7.361332</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" Hora Frac\n", | |
"Deu BD \n", | |
"Lisa Zecca 5.458333\n", | |
"Lisa Johnson 5.850000\n", | |
"Christie Wells 6.066667\n", | |
"Byron Gibson 6.356978\n", | |
"Donya Waddill 6.731403\n", | |
"Larry Andrade 6.994444\n", | |
"Carol Butler 7.007292\n", | |
"David Vegetabile 7.091667\n", | |
"Mary Birge 7.112667\n", | |
"Lucila Daniels 7.361332" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 25 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "fgw5cTrb4G4W", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"### Tardões da família\n", | |
"Aqueles que em média deram bom dia mais tarde:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "17ogb3jBtgFC", | |
"colab_type": "code", | |
"outputId": "2069d31b-b584-4494-aa96-9cf299949b35", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 373 | |
} | |
}, | |
"source": [ | |
"df.groupby('Deu BD').mean().sort_values('Hora Frac', ascending=False).head(10)" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Hora Frac</th>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Deu BD</th>\n", | |
" <th></th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>Cesar Stokes</th>\n", | |
" <td>12.858333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Tony Mcardell</th>\n", | |
" <td>11.616667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Gary Cottrell</th>\n", | |
" <td>11.383333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Betty Gaddis</th>\n", | |
" <td>11.122222</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Alicia Satterthwaite</th>\n", | |
" <td>10.608333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Amy Bambeck</th>\n", | |
" <td>10.562821</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Ronald Young</th>\n", | |
" <td>10.076905</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Genevieve Deberry</th>\n", | |
" <td>9.933333</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Mary Lashbrook</th>\n", | |
" <td>9.822222</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Raymond Hernandez</th>\n", | |
" <td>9.466667</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" Hora Frac\n", | |
"Deu BD \n", | |
"Cesar Stokes 12.858333\n", | |
"Tony Mcardell 11.616667\n", | |
"Gary Cottrell 11.383333\n", | |
"Betty Gaddis 11.122222\n", | |
"Alicia Satterthwaite 10.608333\n", | |
"Amy Bambeck 10.562821\n", | |
"Ronald Young 10.076905\n", | |
"Genevieve Deberry 9.933333\n", | |
"Mary Lashbrook 9.822222\n", | |
"Raymond Hernandez 9.466667" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 26 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "NxqJZfjq4L-H", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"No entanto, alguns deram bom dia poucas vezes e sendo assim não há significância estatística. Por exemplo, o primeiro colocado somente deu bom dia duas vezes:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "8En1n84Dt-tH", | |
"colab_type": "code", | |
"outputId": "ccdb8a56-55de-4ba6-d072-64de60076fb9", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 47 | |
} | |
}, | |
"source": [ | |
"df[df['Deu BD']=='Stormy Cahoon']" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Data</th>\n", | |
" <th>Hora</th>\n", | |
" <th>Deu BD</th>\n", | |
" <th>Hora Frac</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
"Empty DataFrame\n", | |
"Columns: [Data, Hora, Deu BD, Hora Frac]\n", | |
"Index: []" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 27 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "lM6ipt85wc4o", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Portanto, para ter uma significância estatística, vamos selecionar apenas aqueles que deram bom dia pelo menos 10 vezes:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "IH3ksEV1wA_k", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"bomdiadores=df['Deu BD'].value_counts().index[df['Deu BD'].value_counts().values>10]" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "LjhKu9x64qOK", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"### Madrugadores da Família com Significância Estatística\n", | |
"Aqueles que em média deram bom dia mais cedo e pelo menos 10 vezes:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "ryOETLQKxRfF", | |
"colab_type": "code", | |
"outputId": "75d858fc-cbad-4f28-f756-86c00a0c77c7", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 373 | |
} | |
}, | |
"source": [ | |
"df[df['Deu BD'].isin(bomdiadores)].groupby('Deu BD').mean().sort_values('Hora Frac').head(10)" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Hora Frac</th>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Deu BD</th>\n", | |
" <th></th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>Byron Gibson</th>\n", | |
" <td>6.356978</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Donya Waddill</th>\n", | |
" <td>6.731403</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Carol Butler</th>\n", | |
" <td>7.007292</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Mary Birge</th>\n", | |
" <td>7.112667</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Lucila Daniels</th>\n", | |
" <td>7.361332</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Henry Frasier</th>\n", | |
" <td>7.372024</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Frederick Elio</th>\n", | |
" <td>7.448701</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Vicki Main</th>\n", | |
" <td>7.620264</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Barbara Mestad</th>\n", | |
" <td>7.642702</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Raul Medina</th>\n", | |
" <td>7.680792</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" Hora Frac\n", | |
"Deu BD \n", | |
"Byron Gibson 6.356978\n", | |
"Donya Waddill 6.731403\n", | |
"Carol Butler 7.007292\n", | |
"Mary Birge 7.112667\n", | |
"Lucila Daniels 7.361332\n", | |
"Henry Frasier 7.372024\n", | |
"Frederick Elio 7.448701\n", | |
"Vicki Main 7.620264\n", | |
"Barbara Mestad 7.642702\n", | |
"Raul Medina 7.680792" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 29 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "4vPhU2iV_ouC", | |
"colab_type": "code", | |
"outputId": "7b8b45ad-abdc-4fef-d0de-6d7eac5705fe", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 368 | |
} | |
}, | |
"source": [ | |
"df[df['Deu BD'].isin(bomdiadores)].groupby('Deu BD').mean().sort_values('Hora Frac').head(10).plot.bar()" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"<matplotlib.axes._subplots.AxesSubplot at 0x7f0c565036a0>" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 30 | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "1pJqLrCN45o0", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"### Tardões da Família com Significância Estatística\n", | |
"Aqueles que em média deram bom dia mais tarde e pelo menos 10 vezes:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "L2kLGu3TznRO", | |
"colab_type": "code", | |
"outputId": "bf99dd1f-f1a2-4316-c499-44bf5c79e277", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 373 | |
} | |
}, | |
"source": [ | |
"df[df['Deu BD'].isin(bomdiadores)].groupby('Deu BD').mean().sort_values('Hora Frac', ascending=False).head(10)" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Hora Frac</th>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Deu BD</th>\n", | |
" <th></th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>Amy Bambeck</th>\n", | |
" <td>10.562821</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Ronald Young</th>\n", | |
" <td>10.076905</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Charles Boham</th>\n", | |
" <td>9.236797</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Margaret Large</th>\n", | |
" <td>9.082609</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Elizabeth Arnold</th>\n", | |
" <td>9.071171</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>William Griffin</th>\n", | |
" <td>8.977778</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Stefani Mcgray</th>\n", | |
" <td>8.964286</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Michele Herron</th>\n", | |
" <td>8.925505</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Johnnie Nickell</th>\n", | |
" <td>8.913095</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Joanna Woods</th>\n", | |
" <td>8.894042</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" Hora Frac\n", | |
"Deu BD \n", | |
"Amy Bambeck 10.562821\n", | |
"Ronald Young 10.076905\n", | |
"Charles Boham 9.236797\n", | |
"Margaret Large 9.082609\n", | |
"Elizabeth Arnold 9.071171\n", | |
"William Griffin 8.977778\n", | |
"Stefani Mcgray 8.964286\n", | |
"Michele Herron 8.925505\n", | |
"Johnnie Nickell 8.913095\n", | |
"Joanna Woods 8.894042" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 31 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "0C9cOF35CN2r", | |
"colab_type": "code", | |
"outputId": "7dc65b0e-4320-44cb-e390-36f59c6753b2", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 368 | |
} | |
}, | |
"source": [ | |
"df[df['Deu BD'].isin(bomdiadores)].groupby('Deu BD').mean().sort_values('Hora Frac', ascending=False).head(10).plot.bar()" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"<matplotlib.axes._subplots.AxesSubplot at 0x7f0c56524dd8>" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 32 | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXAAAAFOCAYAAACfaUbiAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0\ndHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nO3dd5idVbn+8e+TBEhCkxIRCRhApEgn\niARQivjTI+KRA0KO0g6KjWKN2A5YjkepIqAYkCIiqIAiHEGKojTBARIITRAiRhFCgIDS4f79sdbO\n7JnsmUkye693v8n9ua65MrvMrCczez+z3lWeFZIwM7P6GVF1AGZmtmicwM3MasoJ3MysppzAzcxq\nygnczKymnMDNzGpqVMnGVl11VU2YMKFkk2ZmtXfLLbc8Jmlc//uLJvAJEybQ09NTskkzs9qLiL+0\nut9DKGZmNeUEbmZWU07gZmY1VXQM3MwWLy+++CKzZs3iueeeqzqUxcLo0aMZP348Sy211AI93wnc\nzBbZrFmzWH755ZkwYQIRUXU4tSaJOXPmMGvWLNZee+0F+hoPoZjZInvuuedYZZVVnLzbICJYZZVV\nFupqxgnczIbFybt9FvZn6QRuZrW23HLL9bl91llnccghh7S9nZkzZzJmzBg233zzeR8vvPBC29tZ\nGF01Bj7hiP8b9veY+c13tSESM1sU7XgPNyvxfn7ppZcYNWrBUuG6667LtGnT2vK92sE9cDNbbM2c\nOZOdd96ZTTfdlF122YWHHnoIgAMOOICPfOQjbLPNNkyZMoWbb76Zbbfdli222IJJkyZx7733LnAb\nRx11FPvuuy/bbbcd++67LzNnzmSHHXZgyy23ZMstt+SGG26Y99xvfetbbLLJJmy22WYcccQRw/7/\ndVUP3MxsYT377LNsvvnm824//vjj7L777gAceuih7L///uy///6cccYZHHbYYfziF78A0gqaG264\ngZEjR/LUU09x7bXXMmrUKK666iq+8IUvcOGFF87X1p///Od5bW233XaccsopANx1111cd911jBkz\nhmeeeYYrr7yS0aNHc9999zF58mR6enq47LLLuPjii7npppsYO3Ysjz/++LD/707gZlZrY8aM6TOs\ncdZZZ82ruXTjjTdy0UUXAbDvvvsyZcqUec/ba6+9GDlyJABz585l//3357777iMiePHFF1u2NdAQ\n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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "iIkioCTS4_Nv", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Aqui vale salientar que há uma diferença de fuso horário de uma hora portanto alguns não necessariamente são mais tardes. " | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "MhUnGLXkAP9Z", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"### Dia com mais bom dias\n", | |
"Os dias mais movimentados:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "ndKwxFAJARxt", | |
"colab_type": "code", | |
"outputId": "a1f79e37-11b5-4ea3-bf5e-ff69ae0bb111", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 373 | |
} | |
}, | |
"source": [ | |
"df.groupby('Data').count().sort_values('Deu BD', ascending=False).head(10)" | |
], | |
"execution_count": 0, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"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>Hora</th>\n", | |
" <th>Deu BD</th>\n", | |
" <th>Hora Frac</th>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>Data</th>\n", | |
" <th></th>\n", | |
" <th></th>\n", | |
" <th></th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>12/26/16</th>\n", | |
" <td>18</td>\n", | |
" <td>18</td>\n", | |
" <td>18</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>5/7/17</th>\n", | |
" <td>18</td>\n", | |
" <td>18</td>\n", | |
" <td>18</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>10/10/16</th>\n", | |
" <td>17</td>\n", | |
" <td>17</td>\n", | |
" <td>17</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>5/29/17</th>\n", | |
" <td>17</td>\n", | |
" <td>17</td>\n", | |
" <td>17</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>12/15/17</th>\n", | |
" <td>17</td>\n", | |
" <td>17</td>\n", | |
" <td>17</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>3/13/17</th>\n", | |
" <td>17</td>\n", | |
" <td>17</td>\n", | |
" <td>17</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>7/24/17</th>\n", | |
" <td>17</td>\n", | |
" <td>17</td>\n", | |
" <td>17</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>12/31/16</th>\n", | |
" <td>16</td>\n", | |
" <td>16</td>\n", | |
" <td>16</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4/15/18</th>\n", | |
" <td>16</td>\n", | |
" <td>16</td>\n", | |
" <td>16</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>5/27/17</th>\n", | |
" <td>16</td>\n", | |
" <td>16</td>\n", | |
" <td>16</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" Hora Deu BD Hora Frac\n", | |
"Data \n", | |
"12/26/16 18 18 18\n", | |
"5/7/17 18 18 18\n", | |
"10/10/16 17 17 17\n", | |
"5/29/17 17 17 17\n", | |
"12/15/17 17 17 17\n", | |
"3/13/17 17 17 17\n", | |
"7/24/17 17 17 17\n", | |
"12/31/16 16 16 16\n", | |
"4/15/18 16 16 16\n", | |
"5/27/17 16 16 16" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 33 | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "qV2sY_W6B2gT", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"### Exportando a base de dados" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "H2v2BR902o5Y", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Por fim, vamos exportar esta base de dados para CSV. Assim você também poderá fazer análises usando o Excel ou Google Sheets:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "r_37RJ7M0RPB", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"df.to_csv('whatsapp-familia-bomdia.csv')" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "GuMVJjTD2_Gn", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"Como o Google Drive está montado, o arquivo estará salvo na mesma pasta que o arquivo txt importado anteriormente. " | |
] | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment