sexta-feira, 24 de abril de 2015

[P8] Nascimentos e mortes por dia do ano


     Existem 122.069 nascimentos e mortes (86.975 nascimentos e 35.094 mortes) disponíveis publicamente na Wikipedia (dados atualizados até 31/12/2014). São informações de pessoas que a enciclopédia on-line pensa ser relevante, como políticos, artistas, músicos, arquitetos, enfim, pessoas que possuem entradas no site relatando algum acontecimento extraordinário em suas vidas. Veja por exemplo os dados do dia 1o. de Janeiro ou 31 de Dezembro (os nascimentos e mortes estão listados no final da página).

Dados

     A listagem a seguir mostra o primeiro e o último registro do arquivo para explicar seu cabeçalho:
Birth/Death;Date;Name,Observation
B;01/01/871;Zwentibold, Frankish son of Arnulf of Carinthia (d. 900)
...
D;31/12/2009;Justin Keating, Irish surgeon, and politician (b. 1930)

     O primeiro registro do arquivo é um nascimento (B, ou birth) e o último registro é uma morte (D, ou death). O arquivo mostra a data de nascimento/morte (formato DD/MM/AAAA) separando os dados por ';'. A ordem dos registros é por data, da menor para a maior.

     Um dos desafios ao se trabalhar com estes dados não dizem respeito à data de nascimento ou morte, mas sim a desestruturação existente quanto a observação que foi feita na página da Wikipedia (no arquivo, equivale ao campo Name,Observation). Por exemplo, existem muitas atividades realizadas pelas pessoas, o que dificulta a análise do arquivo, bem como o local de nascimento. As vezes, na morte, é indicada a data de nascimento e vice-versa e, às vezes, nada é informado.

Gentílicos e adjetivos pátrios

     Gentílicos e adjetivos pátrios são classes de palavras que indicam o local de nascimento ou morte de uma pessoa (para maiores informações, entre nesta página da Wikipedia). O arquivo com os nascimentos e mortes possuem uma série de denominações do país de nascimento e morte das pessoas relacionadas, então será útil para descobrir os países que fazem parte da listagem e suas quantidades (ambas as listagens estão em inglês). Os gentílicos e adjetivos pátrios, em inglês, são chamados de Demonym (http://en.wikipedia.org/wiki/Demonym).

Dados

     Existem três arquivos principais para baixar:
  • nascimentos-e-mortes.txt: listagem dos nascimentos e mortes obtidos da Wikipedia (em inglês)
  • gentilicos.txt: arquivo contendo os adjetivos pátrios (em inglês)
  • datas-comemorativas-brasil.txt: arquivo contendo todas as datas comemorativas (dias normais, ou seja, dias úteis) e os feriados oficiais do Brasil (em português)
     Cuidado: pode haver mais de um gentílico por país (por exemplo, Argentinian, Argentinean ou Argentine).
     Salve os arquivos neste link (2.35Mb).

Questões interessantes deste projeto
  1. Faça um relatório geral dos seguintes dados do arquivo:
    1. Por dia do ano, de 1/Janeiro a 31/Dezembro, quantos nascimentos e quantas mortes existem no arquivo (separe o total por tipo)?
    2. Qual é o dia que mais possui nascimentos e qual possui mais mortes? (dias mais férteis e dias mais sangrentos)
    3. Qual é o mês que mais possui nascimentos e qual possui mais mortes? Ordene do maior para o menor
    4. Qual dia possui menos nascimentos e qual possui menos mortes?
    5. Qual mês possui menos nascimentos e qual possui menos mortes?
    6. Qual é o percentual de nascimentos e mortes em relação ao total da listagem?
  2. Mostre o número total de pessoas nascidas conforme as seguintes profissões (liste o total por profissão): polititian, photographer, author, mathematician, actor, actress, singer, songwriter, poet, journalist, football player, baseball player, soccer player, tennis player, illustrator, boxer, comedian, screenwriter, composer, cyclist, geographer, activist
  3. Descubra o país de cada nascimento de cada pessoa do arquivo (utilize o arquivo auxiliar de gentílicos). Cuidado: às vezes, o país é duplo, por exemplo, English-American ou Indian-Bangladeshi
  4. Mostre a contagem de pessoas por país usando a listagem de gentílicos, ordenando da maior para a menor
  5. Mostre em uma listagem todos os nascimentos e mortes de pessoas nascidas nos Estados Unidos (American e derivados, por exemplo, Canadian-American ou Chinese-American) com profissão igual a actor ou actress, ordenando por ano de nascimento
  6. Para as pessoas no arquivo que possuem uma data de nascimento E uma data de morte, mostre uma listagem com o nome e o total de anos que ela viveu
    1. Mostre o total em anos, indicando quantos dias faltariam para seu próximo aniversário
    2. Mostre também o total de meses, dias, horas e minutos vividos
  7. Mostre o total de Sir e Madame existentes e o intervalo entre cada morte, ordenada por ano de forma crescente
  8. Mostre o nome completo das pessoas com King no nome (em qualquer lugar, podendo ser no meio do nome, por exemplo, Stephen Hawking
  9. Para todas as profissões com player, liste apenas o nome, a profissão e o ano de nascimento em um novo arquivo, chamado player.txt
  10. Coloque todas informações (data de nascimento e morte, nome, profissão) das pessoas nascidas no Brasil (Brazilian e derivados, por exemplo, Brazilian-French) em um arquivo chamado brazilian.txt
    1. [DESAFIO] Faça um arquivo por país conforme a lista de gentílicos, com nome igual ao nome do gentílico
  11. Liste as informações das pessoas com apelidos no nome, por exemplo, Yolanda "Tongolele" Montes
  12. Construa uma tabela mostrando os 5 países que mais possuem entradas no arquivo em nascimentos, listando o nome do país e o total de nascimentos e mortes. Faça outra tabela com as mesmas características mostrando as mortes
  13. Mostre as informações completas (nome, datas, observações) de todas as pessoas santas (ou seja, com observação igual a Saint)
  14. Para todos os primeiros nomes do arquivo, construa uma listagem mostrando o total de ocorrências de cada nome e salve-a em um arquivo chamado nomes-pessoais.txt (ordene a listagem por ordem crescente do total de nomes)
  15. Usando o arquivo datas-comemorativas-brasil.txt:
    1. Liste, para cada feriado (no arquivo marcado com a letra F), o total de pessoas nascidas e o total de mortes, ordenando a listagem produzida pelo dia com o maior número de ocorrências até o menor
    2. Mostre o total de pessoas nascidas em dias normais (que não são feriados, marcadas no arquivo pela letra N). Informe também o total de pessoas nascidas e mortas por dia
  16. Mostre todas as informações das pessoas que tem o gentílico Frankish. Os francos (wikipedia: http://en.wikipedia.org/wiki/Franks) foram uma tribo da europa.
  17. Mostre o número de nascimentos e mortes por país
  18. [DESAFIO] Crie uma nova listagem de nascimentos e mortes (chamada listagem.txt conforme o seguinte formato: Dia de nascimento;Dia de morte;Nome completo;Pais;Profissao. Faça isso apenas para as entradas completas, ou seja, que possuem dia de nascimento e morte, um país da lista de gentílicos e pelo menos uma profissão (escolha uma profissão para salvar na nova listagem). Ordene pelo dia de nascimento

sexta-feira, 10 de abril de 2015

[P7] Sobrenomes da língua portuguesa


     Indiscutivelmente, Portugal no Século XV foi uma potência naval. No mapa-múndi, Portugal é um país de proporções pequenas e encontra-se encravado em um pequeno estreito de terras no oeste da Europa. Os grandes (e corajosos) navegadores portugueses circularam o mundo levando a sua cultura por onde passavam, influenciando o globo terrestre. Hoje em dia, a língua portuguesa é falada em pelo menos 10 países, por aproximadamente 269 milhões de pessoas, muito mais que as 11 milhões de pessoas de Portugal de onde tudo se originou. As línguas românicas são hoje faladas em muitos locais (Itália, França, Espanha, Romênia, etc) sendo estas derivadas do latim (e latim vulgar), com influências de muitas línguas (no Brasil, inclusive, as línguas dos índios foram mescladas no português brasileiro).
     Os historiadores marcam que o Império Português durou de 1415 (Conquista de Ceuta, no norte da África) até 1999 (com a entrega de Macau), ou seja, 584 anos (o Brasil tem em 2015 apenas 515 anos).

Curiosidades

     O português é a língua oficial dos seguintes países (dados obtidos em Wikipedia em 15/03/2015, e ordenados por população):

País População(*) Percentual (%)
Brasil 202.656.788 75,3% 93,5%
Moçambique 24.692.144 9,2%
Angola 24.300.000 9,0%
Portugal 10.813.834 4,0% 6,5%
Guiné-Bissau 1.693.398 0,6%
Goa (Índia) 1.457.723 0,5%
Timor-Leste 1.201.542 0,4%
Guiné-Equatorial 722.254 0,3%
Macau 587.914 0,2%
Cabo Verde 538.535 0,2%
Índia Damão e Diu (Índia) 242.911 0,1%
São Tomé e Príncipe 190.428 0,1%
Total 269.097.471 100%
(*) baseando-se em estimativas populacionais.






     A imagem a seguir explica os dados acima, onde o Brasil detém 75,3% da população total de falantes da língua portuguesa. Angola e Moçambique vem logo a seguir, com 18,2% dos falantes e estes três países tem 93,5% do total.


     A figura a seguir mostra o mapa-múndi e os países que falam português, destacando-se Portugal.

     A próxima figura detalha a zona de influência do português ao redor do mundo. Tirando a área do mar da figura (33 milhões de km2, aproximadamente), a área possui 11 milhões de km2 (olhar próxima tabela), o que é bastante considerável em relação ao resto do mundo (estes números não são exatos, mas fornecem uma ideia da área aproximada de pessoas que estão falando português).

Dados

     Os dados a seguir listam os primeiros 200 sobrenomes dos países que falam português, obtidos no site http://forebears.io/. A tabela a seguir lista as siglas utilizadas no arquivo (estes dados também estão comentados no cabeçalho) relacionando-as com o país (no primeiro arquivo). O segundo arquivo contém 1951 sobrenomes gerais (sem origem definida).

     Faça o download dos seguintes arquivos:
  1. 200 sobrenomes mais comuns em países de língua portuguesa (arquivo sobrenomes-lingua-portuguesa.txt)
  2. Outros 1951 sobrenomes (arquivo sobrenomes-gerais.txt)
     Legenda dos sobrenomes do arquivo sobrenomes-lingua-portuguesa.txt:
Sigla País/RA* Área (km2)
BRA Brasil 8.515.767
ANG Angola 1.246.700
MOZ Moçambique 801.590
POR Portugal 92.090
GUI Guiné Bissau 36.544
MAU Macau 28.600
EQU Guiné Equatorial 28.051
TIM Timor Leste 15.007
CAB Cabo Verde 4.033
- Goa** 3.702
SAO São Tomé e Príncipe 1.001
Total 10.773.085
Área Mundial 149.000.000
(*) Região Administrativa
(**) Para Goa não existem dados relativos à sobrenomes

Questões interessantes deste projeto
  1. Qual é o sobrenome mais comum de cada país (a partir do arquivo dos 200 sobrenomes mais comuns)?
    1. Quais são os menores (em número de caracteres) e maiores (idem) sobrenomes de cada país?
  2. Por ordem alfabética, qual é o número total de sobrenomes existentes de cada letra? (por exemplo: sobrenomes com 'A': 3.444.200, ...)
  3. A listagem fornece um total de pessoas com um sobrenome específico. Qual é o sobrenome (entre todos os países) com o maior número de pessoas?
  4. Para a listagem fornecida, quantas pessoas no total estão contadas nas listagens de sobrenome?
  5. Qual é o percentual de pessoas listadas no arquivo em relação à população de cada país?
  6. Separe o arquivo original em um arquivo de sobrenome por país, colocando a sigla no cabeçalho e informando o nome do arquivo como sendo a sigla com terminação .txt
  7. Construa um arquivo novo ordenando pelo maior número de sobrenomes da listagem, preservando a sigla do país (também ordenada alfabeticamente)
  8. Crie um novo arquivo de dados (chamado sobrenomes-unicos.txt) contendo a listagem de sobrenomes únicos (retira os sobrenomes repetidos, e somam-se os totais dos sobrenomes de cada país), sem a sigla
  9. Qual é o sobrenome com o maior número de caracteres de cada país?
  10. Para cada sobrenome de cada país, mostre o percentual deste em relação à população total do país (use a tabela acima que mostra a população)
  11. Quais são os sobrenomes em comum entre todos os países? (se é que existe algum - se não existir, mostre o sobrenome em comum com o maior número de países)
  12. Quantos sobrenomes e quantas pessoas possuem hipocorismos (apenas com sufixos -inho e -inha) no nome? Liste-os.
  13. Quantos sobrenomes são patronínicos, ou seja, terminados em ES (significando 'filho de'), em IZ (idem)? Liste-os, bem como a população por país que os possui
  14. Análises sobre os dois arquivos de sobrenomes do problema
    1. Quais e quantos sobrenomes em comum existem nos dois arquivos?
    2. Qual país possui o maior número de sobrenomes nos dois arquivos?
    3. Quais sobrenomes do arquivo de nomes gerais (o segundo arquivo) não existem nos 200 sobrenomes (primeiro arquivo) de qualquer país?
    4. Quantos habitantes que falam português existem por metro quadrado em cada país? (ordene a lista do maior para o menor número)