You are on page 1of 11
2av082022 08:17 ‘Alguns Comandos isis de Pandas. Quando comecsi a programar em Python... | by Dilane Dias | Medium es Dirlene Dias (olow) Jan 24,2020 - Sminread Save Alguns Comandos uteis do Pandas Quando comecei a programar em Python, me perdia em comandos simples que faria sem dificuldades em R, dai buscava nas comunidades “como fazer tal coisa” e sempre achava um artigo que me ajudava, Entdo, assim como fui ajudada, quero ajudar a comunidade reunindo alguns comandos que eu mais precisei usar. Espero que ajude :D dicionar linhas em um Data Frame: Vocé pode adicionar linhas em um Data Frame através do append e do loc, neste artigo vou mostrar como fazer isso e qual a diferenca entre 0 loc ¢ iloc. Se vocé quiser hitps:imedium.com!@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Stat9ae510ct am 2906/2022 08:17 ‘Alguns Comandos iteis de Pandas. Quando comecsi a programar em Python... | by Dilane Dias | Medium GFT pelbatatrana(colume = ["An9", “Valor. Open in app 1 *Qede teens", es"]) ‘Ano_Vlovondae Gt tone Quero incluir uma linha, entdo posso passar um diciondrio {} dentro do append e atribuir ao Data Frame. Perceba que a Key € 0 nome da coluna e o value é 0 valor da linha correspondent: Gr = df-oppeng({"Ano': 2013, "Valor_vendas": 135088, “Qtde_{tens": 278, ‘Mes*: “Jan"), tgnore_tndex = True) ea oa soma Agora, se vocé quiser inserir mais de uma linha de uma s6 vez, vocé pode criar uma lista com os diciondrios {} e fazer um tinico appent ados_vendas_anuais = [("Ano': (Cano: 2011, (Chor? 20, (Cano: 204i, {Cao's 2012, {‘ino"? 2313, ‘Caner: 2017, {cano": 2012, Cane"? 2012, es! Mar) ea" mal"), ess "300" otae_ eens ‘etca_stene's 689, Mas! Mal 3] Gt 7 df appene(dodos_vandas_anuais, ignore_index= False) # False vat comeear un nove index nas Linhas inceridas 6202 oo ae hitps:imedium.com/@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Statae510ct amt 2906/2022 08:17 ‘Alguns Comandos iteis de Pandas. Quando comecsi a programar em Python... | by Dilane Dias | Medium Open in app Feed pean ral FE ieee ren) A fred sewer ol sree neater onysfecte fs tee Peta coe ‘Ave tervonsas aio ans tes Adicionar linhas através do loc Para adicionar linhas através do loc eu alterei o index para uma sequéncia alfabética, assim ficara mais facil de entender como 0 loc e iloc vao funcionar. ae tndox = (Fat, "by Sey 8) fey FS ahs OHS 1) Fs RS Dy Umy “ats "0s Phy Say Oy 8] O loc vai adicionar a linha seguindo o index, entao para adicionar a linha nova eu preciso passar o index, neste exemplo o meu dataset tem indices da letra A até a letra S, ento quero adicionar uma linha que ter o indice T: (nd hitps:imedium.com/@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Statae510ct ait 2906/2022 08:17 ‘Alguns Comandos iteis de Pandas. Quando comecsi a programar em Python... | by Dilane Dias | Medium Gfloc['t'] © (asia, 2700, 637, Son a 218800 en ee ne a ime asm bam 188000620 Mar Veja que a linha T foi incluida, porém é importante saber que caso meu dataset j4 tivesse uma linha com o indice T os dados seriam substituidos. Alterar linhas através do iloc Oiloc é parecido com 0 loc, porém 0 iloe vai localizar a linha pela posi¢éo, por exemplo, quero alterar os dados da linha da posigio 19 (a tiltima linha neste caso): sf ilee[19} Valor verdas 273000 tae. Teens 57 Name: ty dtyper object O cédigo para alterar a linha seria este: (nd hitps:imedium.com/@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Statae510ct ant 2906/2022 08:17 Ge.ttocti9] = [2012, 270000, 667, ‘un'] ar > ant Fev am Mar fe wa > a Fev ‘Alguns Comandos iteis de Pandas. Quando comecsi a programar em Python... | by Dilane Dias | Medium Open in app Importante: 0 iloc nao adiciona linha, caso vocé tente, dard um erro de dimensao, mas ele sera util para acessar os dados ¢ altera-los. Agrupar dados Agora, vamos supor que eu queria agrupar os dados, posso usar o groupby() e passar como pardmetro a coluna pela qual quero agrupar. Digamos que eu quero agrupar por ano e somar a quantidade de vendas, entao chamo a funcao groupby() e acrescento a fungao sum(, se eu quiser contar as linhas para cada ano eu uso a fungaio count(): (f groupby((are"]).sun() Gf groupby( are") count) (nd hitps:imedium.com/@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Statae510ct st 2906/2022 08:17 ‘Alguns Comandos iteis de Pandas. Quando comecsi a programar em Python... | by Dilane Dias | Medium ocultar a coluna més: GF[Coano'y "Valor vendes"y "Qede itera’ J] aroupby({'A0o'})-sun() IMPORTANTE: se vocé for filtrar as colunas, a coluna que vocé vai usar para agrupar tem que estar na sua sele¢ao do filtro, caso contrdrio retornard um erro. Remover Duplicados Para verificar se seu Data Frame tem dados duplicados vocé pode usar a func4o duplicated() que retornard dados boleanos, veja: hitps:imedium.com/@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Statae510ct ent 2906/2022 08:17 ‘Alguns Comandos isis de Pandas. Quando comecs a programar em Python... | by Dilane Dias | Medium en openinane ( ) Ano Valor_vendas Qideitens Mes 0 2011 135000 270 «Jan 4 2011 119000 430 Fev 2 2011 185000 520 Mar 3 2011 198000 550 Abr 4 2011 204000 560 Mal 5 2012 235000 600 Jan 6 2012 254000 620 Fev 7 2012 244000 605 Mar 8 2012 260000 640 Abr 9 2012 268000 649 Mai 10 2011 119000 430 Fev 1 2011 185000 520 Mar 12 2011 198000 550 Abr 13° 2011 204000 560 Mai 14 2012 235000 600 Jan 15 2012 254000 620 Fev 16 2012 244000 605 Mar 17 2012 260000 640 Abr 18 2012 268000 649 =~ Mai Eu inseri de novos as linhas e pode ver que da linha 10 em diante sao dados repetidos, agora veja como conferir se hé duplicidade: hitps:imedium.com/@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Statae510ct 2906/2022 08:17 ‘Alguns Comandos iteis de Pandas. Quando comecsi a programar em Python... | by Dilane Dias | Medium type: bool Usando a fungao drop_duplicates() vocé vai imprimir os dados sem os duplicados, caso vocé queira remover os duplicados é importante que vocé atribua ao seu Data Frame veja: ne Com 0 comando acima eu apenas imprimi, para apagar de fato os duplicados, eu preciso atribuir novamente ao Data Frame : ona Qu acrescentar o parametro inplace = True que o resultado sera o mesmo. Alids para quem nao conhece, o pardmetro inplace() faz a modificacao no seu DataFrame, quando se passa esse parametro néo hd necessidade de atribuir o database modificado a varidvel novamente, ou seja: 2 Q hitps:imedium.com/@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Statae510ct ait 2906/2022 08:17 [Alguns Comandos iteis de Pandas. Quando comecsi a programar em Python en open inapp # 6 0 mesmo que esse oF drop auoticas ee ee) Se vocé quiser copiar 0 cédigo: 1 2 import pandas as pd 3 4 # Data Frame vazio 5 df = pd.batarrane(columns = ["Ano", ‘Valon_vendas", "Qtde_itens’, ‘Mes*]) 6 7 # 4H Adicionando Linhas com 0 Append 8 df = df.append({‘Ano': 2011, ‘Valor_vendas': 135000, ‘Qtde_itens': 278, ‘Mes': ‘Jan'}, ignore: ° 30 # criando una lista [] de diciondrios {} 11 dados_vendas_anuais = [{*Ano': 2011, ‘Valor_vendas': 119008, "Qtde_itens’: 430, ‘Mes’: ‘Fev'}, 2 (’Ano": 2011, ‘Valor_vendas’: 185080, "Qtde_itens': 520, ‘Mes': ‘Mar}, a (/Ano': 2011, ‘Valor_vendas’: 198000, ‘Qtde_itens': 550, ‘Mes': ‘Abr'}, 4 (C/Ano': 2011, ‘Valor_vendas’: 204080, ‘Qtde_itens': 560, ‘Mes': ‘Mai'), 6 (’Ano': 2012, ‘Valor_vendas’: 235000, ‘Qtde_itens': 600, ‘Mes': ‘Jan"), 16 (’Ano': 2012, 'Valor_vendas’: 254080, 'Qtde_itens': 620, ‘Mes': ‘Fev'}, v7 (’Ano': 2012, ‘Valor_vendas': 244080, 'Qtde_itens': 605, ‘Mes': ‘Mar'}, 18 {’Ano": 2812, ‘Valor_vendas’: 260000, "Qtde_itens': 640, ‘Mes': ‘Abr'}, 19 {(’Ano": 2012, ‘Valor_vendas’: 268080, "Qtde_itens': 649, ‘Mes': ‘Mai'}] 20 a 2 (nd hitps:imedium.com/@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Statae510ct ont 2906/2022 08:17 ‘Alguns Comandos iteis de Pandas. Quando comecsi a programar em Python... | by Dilane Dias | Medium ou cwnine (Gan) 29 #BkH Adicionando Linhas con © loc 30 df.index = ['a", "bY, ‘c', “dy "ey FT * 31 32. # inserindo una nova linha com 0 «oe 33 df.loc["t"] = [2012, 273000, 657, ‘Jun"] 34 35. # WHE Alterando Linhas con 0 iloc 36 dF dloc{29 37 38 # Anserindo una nova linha con 0 ioc 38 df.{oc{19] = (2012, 278000, 667, ‘3un"] “0 41 # WHY Ageupando dados 42. # agrupando por ano 43. df.groupby(["Ano"]) head() aa 45 # agrupando por ano e sonando os valores 46 dF.groupby(["Ano"]).sum() a7 48 agrupando por ano e contando os valores 49. dF.groupby(["Ano"]) .count() 50 51 # F£ltrando colunas e agrupando por ano e sonando os valores 52 dF[{'Ano', 'Valor_vendas', ‘@tde_itens']).groupby({'Ano" J) sun() 83 54 # Filtrando, agrupando e sonando os valores 55 dF[['Mes', 'Valor_vendas', "Qtde_itens"]].groupby(['Mes"}).sun() 36 57 ##H# Tratando duplicados 58 df.duplicated() 59 df.drop_duplicates() 60 df.sort_values({‘Ano', ‘Mes']) 61 dF.drop_duplicates(inplace-True) 62 63 # Anserindo una Linha com © append 64 df = df.append({‘Ano": 2611, ‘Valor_vendas*: 135000, “Qtde_itens*: 278, ‘Mes': ‘Jan"), Sgnore_: 65 df = of drop_duplicates() 66 df.drop_duplicates(inplace-True) | Bore gatera, ew espero que essas dicas ajudem no dia a dia de vocés, logo farei novos post e i hitps:imedium.com/@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Statae510ct tom 2av082022 08:17 ‘Alguns Comandos isis de Pandas. Quando comecs a programar em Python... | by Dilane Dias | Medium en openinane ( ) 7 7 Ev sod emeea hitps:imedium.com!@dirlene.c.s.cias/alguns-comandos-tteis-do-pandas-Stat9ae510ct mt

You might also like