top of page
imagem_2024-04-05_225210528.png

Data Analysis on IMDB
 

PARTE 1

Entendendo e Coletando os Dados

1 - Introdução

Júlia é uma entusiasta no setor de cinema, e ela decide se aventurar investindo em uma startup, a MoviesNow, 

porém, ela percebe que a empresa não está bem organizada, e mesmo preparando seu primeiro projeto, não conhecem os padrões de mercado desse setor do entretenimento.

Em busca de ajudar a MoviesNow a aprimorar sua estratégia e direcionamento, Júlia decide usar suas habilidades em Data Analysis, visando não apenas coletar dados, mas também transformá-los em informações valiosas e acionáveis, e para isso, ela parte em busca de um dataset.

2 - Conjunto de Dados

Júlia decide buscar por um dataset robusto e informativo para análise de dados, oque a levou à IMDB, que possui uma fonte de dados extensa e atualizada, que inclui detalhes sobre o nascimento de artistas, suas obras cinematográficas, avaliações de filmes, anos de produção, dentre outros dados.

image.png

3 - Dicionário de Dados

Tabela 1: title.akas.tsv.gz

  • titleId (string): Identificador único do título.

  • ordering (inteiro): Número único para identificar linhas para um titleId específico.

  • title (string): Título localizado.

  • region (string): Região para esta versão do título.

  • language (string): Idioma do título.

  • types (array): Conjunto enumerado de atributos para este título alternativo.

  • attributes (array): Termos adicionais para descrever este título alternativo.

  • isOriginalTitle (booleano): Indica se é o título original.

​

Tabela 2: title.basics.tsv.gz

  • tconst (string): Identificador único do título.

  • titleType (string): Tipo/formato do título (filme, série de TV, etc.).

  • primaryTitle (string): Título mais popular/usado pelos cineastas.

  • originalTitle (string): Título original no idioma original.

  • isAdult (booleano): Indica se é um título adulto.

  • startYear (AAAA): Ano de lançamento (para filmes) ou início da série (para séries de TV).

  • endYear (AAAA): Ano de término da série de TV.

  • runtimeMinutes: Duração principal do título em minutos.

  • genres (array): Até três gêneros associados ao título.​

Tabela 3: title.principals.tsv.gz

  • tconst (string): Identificador único do título.

  • ordering (inteiro): Número único para identificar linhas para um titleId específico.

  • nconst (string): Identificador único da pessoa.

  • category (string): Categoria de trabalho da pessoa.

  • job (string): Título específico do trabalho (se aplicável).

  • characters (string): Nome do personagem interpretado (se aplicável).

​

Tabela 4: title.ratings.tsv.gz

  • tconst (string): Identificador único do título.

  • averageRating: Média ponderada das classificações dos usuários.

  • numVotes: Número de votos recebidos pelo título.

​

Tabela 5: name.basics.tsv.gz

  • nconst (string): Identificador único da pessoa.

  • primaryName (string): Nome pelo qual a pessoa é mais frequentemente creditada.

  • birthYear (AAAA): Ano de nascimento.

  • deathYear (AAAA): Ano de falecimento (se aplicável).

  • primaryProfession (array): Três principais profissões da pessoa.

  • knownForTitles (array): Títulos pelos quais a pessoa é conhecida.

4 - Diagrama de Relacionamento de Entidades

Com isso, é possível gerar um Diagrama de Relacionamento de Entidades:

Untitled (1).png

5 - Transformando os Dados

O primeiro desafio de seu projeto foi converter arquivos no formato ".tsv" da IMDB para o formato ".csv" compatível com o MySQL Workbench 8.0, e graças ao tamanho dos arquivos, conversores online eram incapazes de realizar a transformação. Para contornar isso, Júlia utilizou um script em Python para realizar a conversão.

​

O script Python identificava os padrões específicos do formato ".tsv" e os transformava em formato ".csv". Isso envolvia substituir as tabulações por vírgulas e realizar outras formatações necessárias para que os dados fossem corretamente interpretados pelo MySQL Workbench. Este método permitiu a conversão eficiente de arquivos de grande porte, tornando-os adequados para importação e análise posterior no MySQL.

codetoimg-snippet.png
codetoimg-snippet (20).png

Após a conversão, os arquivos estavam prontos para serem carregados, Júlia pensou em utilizar a ferramenta Table Import Wizard para realizar a conversão, porém obtendo problemas de performance, optou por um método melhor, com o comando LOAD DATA LOCAL INFILE, concluindo a extração da base de dados.

6 - Informações Extras

Com as informações inseridas em seu computador, Júlia obteve informações interessantes

sobre o escopo do dados que estava trabalhando, segue aqui algumas curiosidades sobre

o conjunto de dados que será trabalhado nesse projeto.

Linhas

158.366.934 linhas de informação

Período de Coleta

Dados abrangendo

de 1894 à 2024

Colunas

32 colunas distintas entre as 5 tables

Região de Coleta

Mais de 240 países diferentes 

Tamanho

12.73 GB de tamanho

em arquivos de table

​

Para mais informações

4k-animation-presenting-data-center-footage-084907643_prevstill.webp

Parte 2

Analisando com

MySQL e Power BI

bottom of page