Python - Introdução ao Pandas

 Básicos do plugin Pandas para o Python:

Trabalhamos com Séries e Dataframes. Series é como se fossem as colunas no Excel e os Dataframes como se fossem as Tabelas.

Aqui, cada elemento das Series pode ter uma label. Por exemplo:

my_list = ['melão','laranja','maçã'] 

criamos uma lista para os nossos elementos

etiquetas = ['fruta1','fruta2','fruta3'] 

criamos uma lista que servirá para chamar esses elementos

Assim, para criarmos uma Serie dentro do Pandas:

x = pd.Series(data = my_list, index = etiquetas) 

no data colocamos os nossos elementos e no index a nossa lista das etiquetas.


Quando chamamos a nossa variável x, já temos portanto a nossa Serie criada.

Para criarmos um DataFrame (tipo tabela no Excel), usamos a seguinte sintaxe:

df = pd.DataFrame({'Nome':['Sérgio','Inês','Beatriz','Henrique'],'Idade':[42,32,7,6],'Cidade':['Porto','Lisboa','Almada','Lisboa']})

Criamos uma variável (df), e dizemos que é igual a pd.DataFrame(nome da função), abrimos parenteses, depois chavetas e o primeiro elemento que colocamos é como se fosse o título da coluna. O segundo é o valor que estará logo por baixo desse título. Podemos colocar vários elementos uns a seguir aos outros separados por vírgulas. É como se fosse um dicionário transformado em tabela:


Podemos aceder às primeiras linhas do DataFrame com o comando head():

df.head(2)

Aqui chamamos as primeiras duas linhas (contando com o título):


Também podemos chamar por exemplo a última linha do DataFrame:

df.tail(1)



Para acedermos a elementos dentro das séries, recordemos a série que criámos:


Podemos chamar os nossos elementos pelas suas labels correspondentes (as labels é como se fossem o index dos elementos da série).

x['fruta1']



Podemos também ler ficheiros .csv e transformá-los logo num DataFrame:

df = pd.read_csv('C:/Users/Dell Latitude E5570/Desktop/sample_output.csv')

Dizemos que a nossa variável df é igual à função pd.read_csv do pandas. Isto abre o ficheiro csv e converte-o num dataframe:



Também podemos aceder a tabelas de sites. Por exemplo esta página do site ZeroZero:


Podemos fazer a seguinte sintaxe:

df = pd.read_html('https://www.zerozero.pt/team_players.php?id=9&epoca_stats_id=150')

E vamos ter um dataframe com todas as tabelas contidas nesta página:


Contudo, podemos escolher a tabela dentro deste dataframe que nos interessa, neste caso a 2:

df[2]


Para acedermos a colunas específicas basta escrever:

df['GM'] por exemplo.

E aqui temos a tabela que queríamos, dentro do Python, pronta para se poder fazer tudo o que quisermos com ela. Podemos por exemplo criar uma tabela com os campos que nos interessam usando o comando drop e apagando colunas:

equipas1 = equipas.drop(['Unnamed: 0','Unnamed: 13','Unnamed: 1'],axis = 1)

Podemos também fazer del equipas['Unnamed: 0'] 

Depois podemos renomear os títulos:

equipaFCP = equipas1.rename(columns={"Unnamed: 2": "Nome", "Unnamed: 3": "Posição"})

E acabamos com a tabela que nos interessa:


Podemos depois fazer uma tabela só com os jogadores que são médios, fazendo uma espécie de filtro e criando um outro dataframe:

medios = equipaFCP[(equipaFCP['Posição'] == 'Médio')]















Comentários

Mensagens populares deste blogue

Python - criar nomes aleatórios

Python - Gerador de nomes aleatórios: V2.0