Para a prova de nível médio do Bacen faltam

quinta-feira, 8 de fevereiro de 2024

Primeiro tijolo - Introdução a Data Science

 

Primeiro tijolo se chama análise exploratória de dados. Iniciamos os trabalhos conhecendo um pouco da ferramenta https://colab.research.google.com/ .

Vamos inicialmente baixar um aquivo do site https://grouplens.org/datasets/movielens/

O arquivo foi extraído https://files.grouplens.org/datasets/movielens/ml-latest-small.zip deste link.

Nesta pasta zipada consta links, ratings, movies e tags. Abaixo segue dados referentes ao arquivo oriundos da página de origem. (MovieLens Latest Datasets These datasets will change over time, and are not appropriate for reporting research results. We will keep the download links stable for automated downloads. We will not archive or make available previously released versions. Small: 100,000 ratings and 3,600 tag applications applied to 9,000 movies by 600 users. Last updated 9/2018.)

No colab importamos inicialmente a biblioteca pandas da linguaguem python. Com o comando abaixo é possível abrir/ler o um arquivo com a extensão csv.

import pandas as pd

pd.read_csv("nome do arquivo.csv")

Após o comando a tela que surge, aqui chamaremos df (DataFrame)


 Ao inserir o termo (notas=) notas = pd.read_csv("ratings.csv) eu atribui um valor ao comando que servirá de referência daqui para frente, facilitando assim o tratamento dos dados.


notas.head() significa que eu solicitei apenas os 5 primeiros resultados do df. Caso eu queira ampliar o espectro da amostragem, basta inserir um numero nos parentêses após o head(10) desta forma serão exibidos 10 linhas ao invés de 5 como padrão head.

Para descobrir mais informações acerca do DataFrame podemos usar o método  .shape 
O método .shape no Pandas é utilizado para obter a dimensão (número de linhas e colunas) de um DataFrame. Ele retorna uma tupla com dois valores, onde o primeiro elemento é o número de linhas e o segundo é o número de colunas. 



Neste caso notas.shape (100836, 4). Este df contém 100836 linhas e 4 colunas (userId, movieId, rating e timestamp).

Agora vamos redefinir o nome das colunas que estão em inglês e colocar em português.
notas.columns = 
["usuarioId", "filmeId", "nota", "momento"]


Vamos isolar a coluna "notas". Assim podemos buscar informações específicas sobre a coluna, podemos chamar de série.


Esta coluna contém valores únicos e para identificarmos teremos que fazer uso de outro método. Neste caso o ".unique".




Sabemos quais notas foram atribuidas na coluna "Notas". Elas vão de 0.5 até 5. Note que neste caso a nota 0 não está inclusa. Precisamos saber quanto cada nota foi atribuída, para isso usaremos ".value_counts()".


Pelo que nos é apresentado na tela é possível identificar quanto cada nota saiu, ou seja a nota 4 saiu 26 mil vezes e a nota 0.5 pouco mais de mil vezes. Este método possibilita saber quanto cada nota foi usada neste conjunto de dados.

Vamos agora solicitar o valor médio entre estas notas.


E agora a mediana:



E para encerrar o primeiro tijolo "a moda".


A média e a mediana acabaram por possuir o mesmo valor de 3.5 enquanto a moda foi para a casa dos 4.0. Normal acontecer isso, afinal cada dataset (conjunto de dados) tem a sua particularidade.

Resumo do tijolo:
Aprendemos a importar uma biblioteca, 

ler um arquivo csv, 

qual a função do .head() e do .shape(), 

renomear colunas, 

encontrar os valores únicos .unique(), 

contar os valores únicos .values_counts(), 

achar a média, mediana e a moda.



Nenhum comentário:

Postar um comentário