Capítulo 1.3.1
Índice
- 1. O que é Ciência de Dados?
- 2. Causalidade e Experimentos
- 3. Progamando em Python
- 4. Tipos de Dados
- 5. Sequências
- 6. Tabelas
- 7. Visualização
- 8. Funções e Tabelas
- 9. Aleatoriedade
- 10. Amostragem e Distribuições Empíricas
- 11. Testando Hipóteses
- 12. Comparando Duas Amostras
- 13. Estimação
- 14. Por que a Média é Importante
- 15. Previsão
Bibliotecas necessárias:
from datascience import Table
import numpy as np
path_data = '../../../'
import matplotlib
matplotlib.use('Agg')
%matplotlib inline
import matplotlib.pyplot as plots
plots.style.use('fivethirtyeight')
import warnings
warnings.simplefilter(action="ignore", category=FutureWarning)
from urllib.request import urlopen
import re
def read_url(url):
return re.sub('\\s+', ' ', urlopen(url).read().decode())
Pré-processamento dos textos:
# Read two books, fast (again)!
huck_finn_url = 'https://www.inferentialthinking.com/data/huck_finn.txt'
huck_finn_text = read_url(huck_finn_url)
huck_finn_chapters = huck_finn_text.split('CHAPTER ')[44:]
little_women_url = 'https://www.inferentialthinking.com/data/little_women.txt'
little_women_text = read_url(little_women_url)
little_women_chapters = little_women_text.split('CHAPTER ')[1:]
Personagens Literários
As Aventuras de Huckleberry Finn descreve uma jornada que Huck e Jim fazem ao longo do rio Mississippi. Tom Sawyer se junta a eles no final, à medida que a ação se intensifica. Tendo carregado o texto, podemos visualizar rapidamente quantas vezes esses personagens foram mencionados em qualquer ponto do livro.
# Obtenha as contagens cumulativas dos nomes Jim, Tom e Huck que aparecem em cada capítulo.
counts = Table().with_columns([
'Jim', np.cumsum(np.char.count(huck_finn_chapters, 'Jim')),
'Tom', np.cumsum(np.char.count(huck_finn_chapters, 'Tom')),
'Huck', np.cumsum(np.char.count(huck_finn_chapters, 'Huck'))
])
# Trace as contagens cumulativas:
# quantas vezes no Capítulo 1, quantas vezes nos Capítulos 1 e 2 e assim por diante.
cum_counts = counts.with_column('Chapter', np.arange(1, 44, 1))
cum_counts.plot(column_for_xticks=3)
plots.title('Cumulative Number of Times Each Name Appears', y=1.08)

No gráfico acima, o eixo horizontal mostra os números dos capítulos e o eixo vertical mostra quantas vezes cada personagem foi mencionado até aquele capítulo inclusive.
Você pode ver que Jim é um personagem central pelo grande número de vezes que seu nome aparece. Note como Tom é mencionado apenas algumas vezes durante grande parte do livro até que ele chega e se junta a Huck e Jim, após o Capítulo 30. Sua curva e a ascensão de Jim sobem bruscamente a partir desse ponto, conforme a ação envolvendo ambos intensifica. Quanto a Huck, seu nome quase não aparece, porque ele é o narrador.
Little Women é a história de quatro irmãs que cresceram juntas durante a guerra civil. Neste livro, os números dos capítulos são escritos e os títulos dos capítulos são escritos em letras maiúsculas.
# Os capítulos de Pequenas Mulheres, em uma tabela
Table().with_column('Chapters', little_women_chapters)
| Chapters |
|---|
| ONE PLAYING PILGRIMS “Christmas won’t be Christmas witho … |
| TWO A MERRY CHRISTMAS Jo was the first to wake in the gr … |
| THREE THE LAURENCE BOY “Jo! Jo! Where are you?” cried Me … |
| FOUR BURDENS “Oh, dear, how hard it does seem to take up … |
| FIVE BEING NEIGHBORLY “What in the world are you going t … |
| SIX BETH FINDS THE PALACE BEAUTIFUL The big house did pr … |
| SEVEN AMY’S VALLEY OF HUMILIATION “That boy is a perfect … |
| EIGHT JO MEETS APOLLYON “Girls, where are you going?” as … |
| NINE MEG GOES TO VANITY FAIR “I do think it was the most … |
| TEN THE P.C. AND P.O. As spring came on, a new set of am … |
| … (37 rows omitted) |
Podemos rastrear as menções aos personagens principais para aprender sobre o enredo deste livro também. A protagonista Jo interage regularmente com suas irmãs Meg, Beth e Amy, até o capítulo 27, quando ela se muda sozinha para Nova York.
# Obtenha a contagem cumulativa dos nomes nos capítulos de Little Women
counts = Table().with_columns([
'Amy', np.cumsum(np.char.count(little_women_chapters, 'Amy')),
'Beth', np.cumsum(np.char.count(little_women_chapters, 'Beth')),
'Jo', np.cumsum(np.char.count(little_women_chapters, 'Jo')),
'Meg', np.cumsum(np.char.count(little_women_chapters, 'Meg')),
'Laurie', np.cumsum(np.char.count(little_women_chapters, 'Laurie')),
])
# Plot the cumulative counts.
cum_counts = counts.with_column('Chapter', np.arange(1, 48, 1))
cum_counts.plot(column_for_xticks=5)
plots.title('Cumulative Number of Times Each Name Appears', y=1.08)

Laurie é um jovem que no final se casa com uma das meninas. Veja se consegue usar as tramas para adivinhar qual delas.
| ← Capítulo 1.3 – Traçando os Clássicos | Capítulo 1.3.2 – Outro Tipo de Personagem → |
