Sim nesse vídeo nós vamos falar dela a biblioteca mais amada a queridinha dos analistas de dados em todo mundo eu estou falando da biblioteca pandas isso mesmo a biblioteca mais utilizada para análise de dados dentro do ecossistema da linguagem Python então se você está começando agora a dar os primeiros passos com programação em Python e também em análise de dados em ciências de dados você precisa conhecer essa biblioteca então fica aqui nesse vídeo comigo porque você vai aprender muita coisa legal tenho certeza disso mas antes da gente começar a colocar a mão no código eu
quero passar aqui alguns pontos com vocês então deixa eu sair aqui da frente vamos falar o seguinte ó a biblioteca pandas já vou mostrar como você instala ela que ferramentas que eu vou utilizar aqui nesse vídeo Fica despreocupado mas olha só que legal a pandas é uma uma das bibliotecas mais utilizadas do mundo para análise de dados eu mesmo utilizo ela todos os dias aqui na ower Dat para fazer diversos tipos de tarefas Ok a pandas ela trabalha com estruturas de dados flexíveis que a gente vai conhecer aqui nesse vídeo ela trabalha com uma estrutura
chamada de Data Frame e também com uma estrutura chamada de series você já vai entender o que que é isso daí o que que a gente consegue fazer com essa biblioteca a gente consegue fazer manipulação e limpeza de dados a gente consegue fazer análise de dados a gente tem ferramentas de indexação e seleção de dados a gente também vai ver isso aqui nesse vídeo muito legal que essa ferramenta ela tem integração com outras ferramentas por exemplo ela foi desenvolvida em cima de uma biblioteca muito famosa que é a não pai uma biblioteca pra gente realizar
cálculos matemáticos ela também foi desenvolvida em cima da mat plot Libe que é pra gente criar visualizações de dados ela se integra com a cbor que é também para visualizações de dados e muitas outras bibliotecas OK ela permite que a gente faça agrupamento e agregação de dados que a gente também vai aprender aqui nesse vídeo ela tem compatibilidade com diversos formatos de dados gente isso daqui eu acho que é uma das coisas mais poderosas a gente consegue trabalhar com diversas fontes de dados e elas sendo de tipos diferentes eu consigo trabalhar com arquivos que csv
arquivos Excel arquivos json eu consigo me conectar a bancos de dados tá utilizando SQL diversos tipos de bancos de dados com hdf5 Ou seja eu consigo trabalhar com diversos tipos de arquivos em um mesmo lugar isso daí é muito legal e outra coisa bem legal do panas é que ela tem uma documentação bem vasta e uma comunidade muito ativa então se você tem dúvidas você vai encontrar uma comunidade muito forte que eles vão te ajudar bastante Ok então já dito tudo isso vamos lá vamos começar a colocar a mão na massa aqui deixa eu ir
aqui pro meu Windows Explorer tá eu criei essa pastinha aqui dentro dessa pastinha eu tenho alguns arquivos que vão estar disponíveis em um link embaixo Aqui do vídeo na descrição do vídeo você consegue encontrar o link para fazer o download desse material Tá ok eu já tenho meu arquivo Júpiter notebook tá E algumas fontes de dados aqui em formatos diferentes pra gente ver como o pandas funciona E aí no meu caso eu estou trabalhando aqui com o anaconda que é uma distribuição Python que já vem com diversos pacotes voltados para análise de dados para ciências
de dados pré-instalados Então eu preciso que você faça a instalação do Anaconda ou se você não quiser usar anaconda não estiver usando anaconda estiver com python Você vai precisar instalar as bibliotecas que a gente vai utilizar aqui separadamente mas eu já vou te mostrar como que você faz isso tá no meu caso aqui ó eu vou fazer o seguinte eu vou abrir o meu gitbash Ah E lembrando que aqui no canal eu tenho vídeo mostrando como faz a instalação do Anaconda de todas as ferramentas que eu estou usando então se você tem alguma dúvida Dá
uma olhada aqui nos vídeos do canal Tá então vamos lá ó abri aqui o meu terminal gitb eu adoro esse terminal aqui no Windows e eu vou trabalhar com Júpiter notebook poderia trabalhar também com Júpiter notebook dentro do vs code Sem problema nenhum aqui vou trabalhar com ele diretamente no Browser tá no formato clássico Então vou chamar aqui no meu terminal deixa eu aumentar o meu terminal aí para você ver bem Júpiter notebook deixa eu invocar aqui ó ele já vai abrir o navegador ó já até mostrou aqui com o meu Júpiter notebook Deixa eu
tirar aqui da tela cheia e aqui gente eu já tenho esse arquivo aqui ó que ele vai estar disponível aí também para você pra gente ir Seguindo aqui um passo a passo pra gente não ter que começar um um Júpiter notebook do zero mas aqui você pode clicar em new e criar um novo Júpiter notebook do zero tá e aqui a gente tem algumas fontes de dados antes da gente entrar no Júpiter notebook Deixa eu te mostrar é esses arquivos aqui o primeiro arquivo tá é um um Excel Então deixa eu abrir aqui a visualização
ó tá vendo um arquivo aqui muito simples tá com algumas colunas e apenas uma aba aqui embaixo depois eu tenho aqui um csv que é um arquivo texto tá com delimitador ele tem dados né ele tá estruturado aqui como um csv é um arquivo separado por vírgula ponto e vírgula qualquer outro delimitador é um arquivo texto e aqui eu tenho um json Jon é um arquivo texto também eu vou abrir ele aqui com bloco de notas para você ver como que é a carinha dele ó ele é dessa forma aqui tá se você abrir ele
no vs code você vai ver que ele vem mais formatados tá joia mas aqui são alguns exemplos que eu trouxe aqui de arquivo bem simples pra gente ver como que o pandas consegue né e Abrir esses arquivos Então deixa eu voltar aqui ó pro meu terminal não no meu terminal Ah muito importante bom que eu voltei aqui no terminal quando a gente dá um Júpiter notebook o comando tá você tem que manter esse terminal aqui aberto você não pode fechar ele porque senão você vai fechar o servidor do Júpiter notebook outra coisa muito importante deixa
eu abrir um outro terminal se você não estiver com o anaconda aí você tiver com python puro você precisa instalar o Júpiter notebook você pode fazer isso de várias formas a mais simples deixa eu aumentar aqui o meu terminal usando o gerenciador de pacote oficial do Python que é o PIP então você pode fazer um PIP install Júpiter dessa forma se eu executar Esse comando aqui ele vai fazer a instalação do Júpiter notebook mas no meu caso aqui como eu estou usando o Anaconda tá se você tiver dúvida veja os vídeos aqui no canal eu
não preciso Ok então vamos lá voltei aqui pro meu anaconda anaconda não perdão pro meu Jupiter notebook e a gente vai abrir esse arquivo aqui ó esse int pandas ipy NB tá é simplesmente um Júpiter Notebook quem já conhece esse ambiente tá já sabe que eu trabalho aqui com células de texto e de código então aqui gente um guia para iniciantes eu já tô com zoom aqui legal deixa eu ver se tá dando para vocês verem bem Tá ok aqui vamos lá primeira coisa é fazer a instalação da biblioteca se você não tiver com anaconda
é o PIP install pandas tá e você vai precisar instalar uma outra biblioteca também que é essa daqui ó Open Excel por quê Porque o a gente vai usar um arquivo Excel aqui e a biblioteca pandas utiliza essa biblioteca Open Pie Excel tá para trabalhar com arquivos Excel então se você não está usando o Anaconda o anaconda já vem com essas bibliotecas faça essa instalação basta rodar tá essa célula aqui então Vamos lá gente como que eu eu importo a biblioteca pandas aqui para trabalhar com ela muito fácil ó importe pandas SPD executei Tá OK
tá lendo fonte de dados agora como que eu leio esses arquivos tá ó já deixei tem uma linha aqui e não vou chamar essa linha aqui de DF Excel não vou chamar só de DF Vinícius Por que DF a gente é um costume aqui a gente utiliza é igual o pandas SPD é um ales né um apelido Poderia chamar de qualquer coisa esse pd mas a gente costuma fazer um Import pandas SPD é um costum aí do pessoal que usa o pandas tá aqui Poderia chamar de dados poderia deixa eu apagar essa linha inteira aqui
Poderia chamar de dados poderia não tem problema nenhum só que a gente chama de DF a gente chama de Data Frame tá o Data Frame é uma tabela de dados Então faço assim um DF tá igual pd que é a biblioteca Aqui é onde que eu importei aqui em cima ponto se eu começar a digitar aqui ó read e dar um Tab um Tab você vai ver que ele traz várias opções aqui ó de read Ou seja eu consigo ler de todas essas olha só que legal então eu vou colocar aqui um read Excel ou
seja vou ler de um arquivo Excel E aí muito importante tá eu tenho que colocar o nome certinho do meu arquivo Excel aqui é dados. xlsx Cuidado se você colocar e até a letra maiúscula ali diferente minúscula tem que ser igualzinho ele vai dar erro Tá então vamos lá ó read Excel o meu nome o nome do meu arquivo é dados. xlsx dessa forma aqui um detalhe importante nesse arquivo eu só tenho uma aba tá eu só tenho uma sheet se eu tivesse outras Abas eu posso especificar qual aba eu quero se eu não especificar
ele vai ler a primeira aba Mas eu posso né Eu tenho um parâmetro aqui chamado sheet name eu posso passar aqui o nome da Aba que eu quero no nosso caso a gente não tem nenhuma aba vou só executar olha só que legal ó control enter ou shift enter tá ele vai executar minha célula viu que não deu erro nenhum o que que o meu pandas fez né minha a minha biblioteca Ele leu os dados desse arquivo aqui Carregou agora dentro dessa variável DF quando a gente carrega um dado né uma tabela de dados aqui
do pandas a gente fala que isso daqui é o quê é um Data Frame a gente já vai falar o que que é a diferença de Data Frame series mas olha só que legal se eu der um type em DF Olha lá que legal ele é um objeto da da biblioteca pandas ó ele é um Data Frame muito legal tá e como eu visualizo agora as linhas tá dessa variável D que tem uma um conjunto de dados ali uma tabela de dados vamos lá vou colocar aqui ó dois métodos muito legais que eu utilizo para
ver as primeiras linhas e depois as últimas linhas então ó visualizando as primeiras linhas então é sempre uma boa prática tá já faz parte aqui de uma análise exploratória Inicial você verificar as primeiras linhas se foram carregadas corretamente e as últimas também então eu posso fazer o seguinte chamar o meu DF ponto eu tenho um método aqui chamado head R de cabeça de cabeça áo dei um enter shift enter ele executou já mostra as primeiras linhas ó ele carregou essas colunas aqui e essas linhas aqui para mim tá muito legal se eu quiser ver aqui
você vê que ele mostra as cinco primeiras se eu quiser ver as 10 primeiras eu posso passar um parâmetro aqui pro rédio 10 15 20 quantas eu quiser se eu não passar nenhum valor ele traz as cinco primeiras Ok e depois eu posso vir aqui visualizar as últimas linhas ó visualizando as últimas linhas eu também tenho um método para isso ó últimas linhas que é o tail Então posso chamar um DF ponto Deixa eu subir aqui Tail mesma coisa eu posso passar 10 15 o parâmetro de da quantidade de linhas eu quero ver ele mostra
as últimas linhas como que eu sei que essa daqui que essas aqui são as primeiras E essas as últimas por causa disso aqui ó a gente não especificou um índice já vou falar sobre índice a gente não especificou um índice para para essa tabela de dados então o pandas criou automaticamente esse índice então Ó o meu índice começa est z0 0 1 2 3 4 meus últimos lá ó tá vendo ó 28 29 30 31 32 eu vejo aqui pelo índice tá E também pelo método que eu estou utilizando agora o que eu quero mostrar
para vocês é o seguinte se eu eu estou lendo aqui de um Excel mas eu poderia ler daquele csv olha só que legal se eu colocar aqui um read csv vou passar aqui um dados.csv olha só o que que vai acontecer por padrão o pandas se eu não especificar Qual que é o delimitador desse Arquivo csv ele vai entender que é uma vírgula tá mas olha só carreguei não deu erro nenhum vou ver aqui o Type continua sendo um Data Frame e vou visualizar aqui as primeiras linhas Olha o que que aconteceu Os dados aqui
não estão legais tá vendo ele não carregou certinho por qu gente Preste bastante atenção nisso daí anote isso porque o separador aqui ó é um ponto e vírgula então eu tenho que especificar aqui quando não é uma vírgula tenho que especificar Eu tenho um parâmetro chamado CP tá que é do separator né eu posso fazer o seguinte ó posso especificar que é um ponto e vírgula vou carregar de novo ó cont control enter agora que eu carreguei olha só que legal meus dados ficam certinhos tá E também né Deixa eu ver aqui os outros arquivos
que a gente tem a gente tem um Jon eu tenho também um read Jon ó ponto ó ponto read dou um Tab você vai encontrar aqui um jon jon vou especificar aqui ó dados pon json mesma coisa ó o tipo continua Você tá vendo que independente do da do tipo de fonte o tipo do dado aqui quando eu carrego no pandas ele continua sendo um Data Frame muito legal isso daqui né Ó vou dar um um head aqui mesma coisa tá aqui eu vou deixar por padrão para ficar aqui como referência um Excel mesmo ó
Excel dados ponto Excel não né xlsx dessa forma aqui então então ó tudo funcionando a gente aprendeu agora então o quê a carregar dados de fontes diferentes e a visualizar essas linhas aí OK e vamos entender agora o que que são essas estruturas de dados aí flexíveis o que que é um dataframe o dataframe ele é a nossa base de dados aqui é o nosso conjunto de dados ou seja é uma tabela de dados onde eu tenho colunas e linhas tá nessa tabela ou seja ela é uma estrutura de dados bidimensional ela tem duas dimensões
ela tem linhas e colunas a series ou séries do jeito que você quiser falar não tem problema nenhum por outro lado é uma estrutura de dados o quê unidimensional ou seja a seres galera nada mais é que cada coluna do meu Data Frame separadamente ou seja o meu Data Frame é um conjunto de series ele é um conjunto de colunas olha só que legal cada coluna é uma series e o conjunto de colunas quando eu junto todos todas elas é o meu Data Frame Então são essas duas estruturas de dados que eu trabalho aqui no
panas Ok e agora que a gente já conhece essas estruturas como que eu Listo as colunas de um dataframe eu tenho uma propriedade chamado colums olha só que legal ó DF PCs se você só D um Tab aí já vai aparecer quando eu executo isso daqui olha o que que ele traz para mim como se fosse uma lista aqui um objeto muito parecido com uma lista e o nome das minhas colunas então eu ten tenho essas propriedades no meu Data Frame então colons eu consigo acessar o nome das minhas colunas eu consigo isso daqui é
um objeto que a gente chama de iterable ele é iterável olha só que legal posso fazer um for coluna em DF pon cols dois pontos print coluna dessa forma aqui e eu consigo iterar sobre cada n coluna do meu Data Frame poderia fazer isso para modificar o nome para retirar espaço em branco para fazer um monte de tipo de manipulação de dados aqui tá joia E agora que a gente já sabe acessar essa propriedade ver o nome das nossas colunas como que eu acesso uma coluna do dataframe Deixa eu chamar o head aqui de novo
só pra gente sempre ter uma referência visual imagina que eu queira acessar essa coluna aqui ó data venda Como que eu faço Existem duas formas de a gente acessar uma coluna no pandas tá a primeira forma é a gente utilizar o DF pon e o nome da coluna eu não gosto de usar essa forma por quê aqui no nosso exemplo ela vai funcionar porque nenhuma das colunas tem caracteres especiais ou espaço então se eu colocar assim ó ponto data venda ele vai funcionar Tá vendo se eu colocar ponto produto ele vai funcionar agora gente se
data venda o nome da coluna fosse data espaço venda essa forma não funciona mais e aí a outra forma É que eu uso tá eu abro e fecho colchetes aqui ó e passo uma string um texto com o nome da coluna aí ela pode ter espaço pode ter caractere especial não tem problema nenhum então aqui eu posso Pôr data venda dessa forma eu vou acessar posso chamar aqui ó produto eu vou acessar tá vendo e aí uma coisa muito legal agora como a gente tá trazendo só uma coluna eu essa estrutura de dados que retorna
é uma series tá uma series ou série do jeito que você quiser falar olha só se eu der um Type aqui você vai ver que ele vai trazer que o tipo de dados agora é uma series Ok muito legal muito legal e agora uma pergunta que fica né então aqui ó produtos e se eu quiser acessar mais de uma coluna Como que eu faço eu tenho aqui meu DF Eu quero acessar produto e vendedor Como que eu faço ao invés de eu passar o nome aqui eu posso passar uma lista de nomes isso mesmo uma
estrutura de dados lista Como que eu faço uma lista eu abro e fecho parênteses ó olha que legal passo aqui ó produto vírgula vírgula vendedor e eu vou acessar duas colunas e agora o tipo não vai ser mais uma siries por quê Porque eu estou trazendo duas colunas tá vendo não tô trazendo uma coluna só juntei duas colunas e já virou um Data Frame olha só que legal se você deu um Type aqui ó você vai ver que é um Data Frame então é muito importante você entender o retorno né dos métodos dos acessos que
eu faço no pandas o que que ele retorna ele retorna uma sirus ele retorna eh um Data Frame ele retorna um valor escalar isso é muito importante a gente aprender desde cedo e aí ainda posso facilitar isso aqui ó se ficou um pouco confuso tem gente que usa o pandas e nem entende isso aqui direito a pessoa fala assim ah se você usar eh colchetes duplos ele traz um Data Frame ele nem sabe o que que tá acontecendo na verdade e por isso que eu falo é muito importante você estudar os fundamentos da linguagem Python
as pessoas que acham que análise de dados é difícil que desenvolvimento web é difícil que automação é difícil Por que que ela acha difícil porque ela pulou né os fundamentos da linguagem ela chega aqui por exemplo ela não sabe direito o que que é uma lista Aí ela fica toda perdida olha só o que que eu vou fazer ó eu vou tirar isso aqui de dentro vou criar aqui um uma variável chamada colunas e vou passar essa lista pra minha variável colunas e agora aqui no meu DF eu só chamo colunas olha só que legal
fica até mais simples O resultado vai ser o mesmo me filtro né quando eu se as colunas assim eu consigo filtrar quais colunas eu quero trazer tá joia E aí uma coisa muito legal também é que existem muitos métodos que são aplicáveis tanto para dataframe quanto para series então aqui tá vendo que ele tá trazendo tudo ó se eu aplicar um head aqui agora tá nesse dataframe ele tá trazendo um dataframe tá funcionaria numa series também mas se eu aplicar aqui um ponto head olha só que legal ele vai trazer as cinco primeiras linhas muito
legal né Vamos lá aprender aqui a utilizar os métodos Lock né locator e o ilock que é o index locator tá são métodos acessores aqui do pandas eles nos ajudam tá a acessar linhas e colunas de uma forma mais moderna Então olha só que legal Deixa eu chamar aqui de novo o meu df. head pra gente sempre ter essa referência visual o lock gente ele acessa pelo rótulo tá o rótulo é o Label que a gente chama aqui que é o que o que que é um Label é o nome da coluna ou o nome
do o índice é o nome do índice e daqui a pouco você vai entender o que que é esse índice Pode ficar despreocupado aí despreocupada tá e o yock ele acessa aí é pelo índice mesmo não é pelo nome pelo índice que eu falo é posição zero ou seja tudo no Python começa de um índice zero né a gente e sabe disso então o que que acontece a minha primeira coluna aqui o Label dela o rótulo o nome é data venda e o índice dela é zero essa minha segunda coluna aqui ó o nome é
produto e o índice dela é um e assim por diante essa coluna aqui ó o índice o o rótulo dela né o Label o nome é vendedor e o índice é dois e assim por diante a mesma coisa acontece com linhas Mas aí tem que prestar atenção numa coisa aqui como a gente não especificou Qual qual é o índice Ele criou automático pra gente então o nome desse índice Aqui é zero o o Label dele tá o nome é zero e a posição dele também é zero depois a gente vai ver que a gente consegue
colocar qualquer coluna como índice Então aqui tem essa coincidência tá o nome desse índice aqui dessa linha é um e a posição dele é um então aqui ele se eles n são coincidentes mas depois a gente vai mudar isso aqui então olha só que legal vou fazer o seguinte vou começar usando o lock tá o lock usa o nome do índice tá o rótulo então se eu fizer assim ó df. loock agora eu abro e fecho colchetes imagina que eu queira acessar aliás Vamos começar com com coluna não eu quero acessar esse índice aqui ó
o zero a linha zero né quero acessar essa linha aqui vou passar aqui ó o zero dessa forma olha só ele trouxe os dados dessa primeira linha pra gente ó deixa eu voltar aqui meu df. Head e aqui é muito importante no Lock eu passo o nome do índice e posso passar o nome de uma coluna também olha só que legal posso fazer assim ó zero vírgula e o nome da coluna que eu quero acessar imagina que eu quero produto Então vou pô zero produto dessa forma aqui e agora se eu executar olha só que
legal ele trouxe lá smartphone que é o que tá na linha um na coluna produto Se eu colocar aqui o vendedor primeira linha vendedor José Maria muito legal né gente muito legal mesmo e olha só se eu quisesse acessar mais de uma coluna ou mais de uma linha eu eu posso fazer isso eu posso passar aqui uma lista de colunas ó vou colocar aqui ó produto vírgula vendedor dessa forma Olha lá vou acessar mais de uma linha e também aqui eu poderia especificar ó passar uma lista dessa forma passar quero a linha zero 1 2
3 ele vai trazer aqui pra gente e eu posso fazer slicers também tá mas eu gosto de utilizar slices já vou mostrar lá no ilock aqui eu não gosto muito não e agora deixa eu mostrar para vocês o ilock vamos lá df. Rad aqui Prontinho e vamos lá vamos usar o ilock agora eu quero acessar essa primeira mesma linha aqui ó Lembra que eu falei que nesse caso está coincidindo a linha a linha o nome da linha vai ser zero e o e a posição também vai ser zero então se eu colocar um ilock aqui
e colocar aqui ó zero ele vai trazer a primeira linha só que se eu colocar um nome da coluna aqui agora não vai funcionar porque agora eu estou trabalhando com o índice mesmo a localização né da coluna então se eu colocar 0 V produto ó ele vai dar erro aqui se eu colocar 0,0 ele vai trazer a primeira linha e a primeira coluna pra gente ó que é uma data eu quero a primeira linha e a ter a terceira coluna Olha lá José Maria e a quarta coluna e assim por diante e aqui gente olha
só que legal deixa eu voltar aqui meu DF r eu consigo fazer slicing E aí se você não sabe o que que é slicing de novo a gente tem que estudar os fundamentos da linguagem tá o que que um slce eu consigo fazer isso aqui ó ilock vir aqui fal assim eu quero que pegue da linha zero até a linha 10 só que tem que tomar cuidado porque esse primeiro parâmetro aqui é inclusivo e o segundo é exclusivo Então olha só ele vai pegar do índice 0 até o índice 9 muito legal tá consigo pôr
vírgula especificar as colunas também tá como 0 e 2 por exemplo eu consigo fazer um slicing também eu quero que pegue da segunda coluna né da coluna de índice um até a coluna de índice 4ro Olha só consigo fazer essas combinações então esses métodos acessores aqui o lock e o ilock são extremamente poderosos Ok espero que esteja gostando e tem muito mais coisa agora vamos seguir para falar de índices Deixa eu só apagar essa linha aqui que eu já vou explicar o que que são índices para vocês bom Deixa eu chamar aqui de novo meu
DF head Lembra que eu falei que a gente não especificou nenhum índice E aí ele criou isso daqui pra gente se você olhar aí no arquivo Excel não existe essa coluna lá tá com esses números isso aqui o pandas criou automaticamente pra gente a gente não não especificou aqui ó na hora de carregar o nosso arquivo a gente não especificou qual coluna deveria iia ser o índice eu posso fazer isso também mas se a gente não faz ele cria um índice automático pra gente justamente pra gente conseguir tá eh acessar o índice aqui da de
cada linha ele cria isso automático para facilitar a vida da gente então existe uma propriedade aqui chamada index olha só que legal que ele vai me falar ó esse índex aqui de zero a um é um é um tipo Rage index ele começa em zero vai até 33 tá e o step o passo dele é de de um a um então eu consigo também acessar essa propriedade index e agora olha só que legal df. Rad Lembra que eu falei que eu posso é especificar qual coluna eu quero que seja meu índice Então olha só eu
posso fazer o seguinte ó existe um método chamado set index eu uso dessa forma e passo para ele como parâmetro aqui qual é a coluna que eu quero agora que seja o índice da do meu Data Frame da minha tabela de dados Então faço isso aqui ó data venda se eu executar tá vendo que agora o nomezinho aqui da coluna data venda desceu porque ela não é mais uma coluna ela é um índice tá vendo muito simples ó set índex o nome da coluna Agora eu quero que seja produto ó produto Olha lá que mudou
o produto saiu daqui das colunas e veio pro índice Tá vendo só que aí gente tem um detalhe Deixa eu voltar aqui o data venda data venda tem um detalhe ele não modificou o meu Data Frame original se eu tirar isso daqui ó vou tirar isso daqui vou apagar e vou só chamar o meu DF de novo você vai ver ele está da mesma forma quando eu fiz essa modificação ele não altera o dataframe original Na verdade o método set index ele retorna um novo Data Frame pra gente onde o índice é data de venda
se eu quiser que ele modifique o meu dataframe original eu tenho que especificar aqui ó um parâmetro chamado inl igual TR ou seja esse impl tá falando assim pandas é para você modificar esse Data Frame original mesmo tá quando eu executo isso daqui agora sim ó deixa eu colocar mais uma linha Você viu que ele não retornou nada pra gente ele modificou o meu Data Frame original então se eu chamar aqui o meu DF Olha só agora a minha data venda é o índice que eu configurei pro dataframe tá joia muito legal né Deixa eu
pôr um DF head aqui ó para trazer só as primeiras linhas e agora Quero mostrar para vocês É algumas funções e propriedades que a gente usa ali para fazer uma análise exploratória rápida tá então a primeira coisa é essa propriedade Shape o shape é muito legal porque ele mostra ó mostrar mostrar as dimensões do dataframe então eu posso fazer o seguinte ó df. Shape E aí ele retorna pra gente uma dupla Vinícius eu não sei o que que é tupla então você precisa estudar os fundamentos da linguagem Python tupla é uma estrutura de dados do
Python tá então ele trouxe aqui uma tupla com dois elementos onde que o primeiro elemento é a quantidade de linhas e o segundo elemento é a quantidade de colunas olha só que legal eu posso fazer até isso aqui ó fazer um desempacotamento de tuplas né então ó linhas colunas igual a DF Shape depois eu posso fazer um para ficar bonito um print usando uma f string total de linhas dois pontos linhas dessa forma aqui ó e aí já faço também um total de colunas ó Total Opa colunas e chama aqui colunas olha só que como
que começa a ficar organizado aqui as coisas né Muito legal então o shape ele te traz as dimensões do seu Data Frame eu uso muito tá o info ele é algo que muito rico tá uma é uma método muito poderoso que ele vai trazer informações ó mostra informações sobre o dataframe é como se fosse um raio x olha só que legal como que eu invoco ele muito simples ó df. info por isso que eu falo pandas é uma ferramenta muito poderosa então quando eu uso o info ele traz várias informações ó primeira coisa ele tá
falando sobre o meu índice Olha lá lembra que era um Rage né index quando a gente viu lá em cima agora mudou para date time index a gente colocou um outro tipo de índice a gente colocou a data agora ele tá falando que tem 33 entradas tá e o índice vai de 19/10 de2020 a 27/01 de2020 olha só que legal agora ele tá falando das colunas do meu Data Frame Olha lá ele traz o nome da coluna e o índice dela a posição 0 1 2 3 tá falando aqui ó que essa coluna produto Deixa
eu tirar aqui ó essa coluna produto tem tem 33 valores não nulos então se eu tenho 33 entradas el tá falando o quê que não tem valor nulo nessa coluna também nessa não tem nessa não tem nessa não tem muita informação né aqui depois Esse dtype é o data Type é o tipo de dados de cada coluna olha só que legal E aí por que que ele trouxe esse Object aqui esse Object sempre que você tiver usando pandas e ver esse Object quer dizer que essa coluna é do tipo texto é uma string Object é
string Por que que é Object porque o no num pai né o panas é construído em cima do npai o npai não tem um tipo de dados para representar string porque ele é uma biblioteca para cálculos matemáticos concorda comigo por isso que fica Object aqui ó índice 64 é um inteiro aqui também é o inteiro Então essa essa esse método info ele é muito poderoso sempre na sua análise exploratória você tem que tá usar ele aqui embaixo também ele mostra a quantidade de memória RAM olha só que tá sendo usada para armazenar os dados desse
D Data Frame esse aqui é pequenininho né então tem 1.3k KB tá joia muito legal muito poderoso vamos seguir aqui ó como que a gente insere colunas tá inserir e excluir colunas do nosso dataframe eu posso fazer o seguinte df. Red imagina o seguinte eu tenho aqui ó valor unitário e quantidade e agora eu quero inserir uma coluna no meu Data Frame que seria o valor total que vai ser o quê essa coluna valor unitário vezes a quantidade então eu sempre vou pegar aqui ó valor unitário e multiplicar pela quantidade e quero trazer para uma
coluna aqui como que eu faço isso será que é complicado fazer isso com pandas olha só que legal vou chamar primeiro a minha coluna aqui ó valor unitário dessa forma tá vendo e agora ó quantidade separado e eu vou simplesmente fazer o seguinte eu vou voltar aqui para valor unitário deixa eu copiar vou voltar para valor unitário e vou multiplicar agora uma coluna uma valor unitário vezes quantidade aí você fala Vinício tá de brincadeira né é fácil assim você pegou né acessou uma coluna e multiplicou por outra Sim e eu consigo fazer isso por causa
do npai se você conhece o npai você sabe que quando eu utilizo multiplicação de arrez npai eu consigo fazer multiplicação né o Element Wise ali né Em cada elemento então quando eu faço isso aqui olha só que legal ele traz o valor agora total que é valor unitário vezes a quantidade show de bola e para armazenar isso em uma coluna olha só a facilidade do pandas gente eu vou chamar aqui um DF que é o meu Data Frame né e vou agora inventar o nome da coluna vou colocar uma nova coluna aqui vou criar um
nome se eu fizer isso e atribuir essa multiplicação a ela vou criar essa coluna Então vou colocar aqui ó valor total deixa eu beber uma água aqui que eu tô um pouco gripado valor Total igual valor unitário vezes quantidade ó executei se eu chamar o meu DF agora R aqui ó olha só que incrível valor total ele já criou pra gente essa coluna então eu consigo criar colunas de várias formas posso criar coluna adicionando e um valor ou um nome ele vai criar isso para todo mundo olha só que legal DF não existe uma coluna
chamada teste então vou fazer assim ó teste igual a Python ó executei vou chamar o meu DF aqui de novo Opa faltou o parênteses Olha lá ele criou a coluna teste colocou valor Python para todo mundo muito legal né E como que eu apago colunas no meu dataframe eu tenho deixa eu colocar aqui ó apagando colunas no dataframe Eu tenho um método chamado drop eu uso muito ele para isso então ó DF pon drop tem um parâmetro chamado colunas desse método e eu passo o nome da coluna ou uma lista se eu quiser apagar mais
de uma coluna então no meu caso aqui eu quero apagar a coluna teste e olha só ele retornou um novo dataframe tome cuidado com isso se eu tirar esse drop aqui e verificar o Data Frame original ela continua aqui a coluna teste então o que que eu tenho que fazer se eu quero realmente modificar ela passar o inl né em Place igual a true Agora sim se a gente chamar um DF muito poderoso pandas né olha só apaguei a minha coluna muito legal né Vamos seguir aqui pra gente falar de contagens de valores distintos aqui
no panas nós temos diversos métodos para fazer contagens de valores distintos e a gente utiliza esses métodos na hora de fazer análise de dados vou mostrar alguns aqui para vocês olha só que legal df. PR gente sempre tem Nossa referência visual imagina o seguinte tá cada linha aqui da minha tabela é uma venda Então essa linha é uma venda essa linha é uma venda essa linha é uma venda Então imagina que eu queira listar os produtos distintos e ver quantas vezes ele aparece nessa coluna Como que eu posso fazer isso tá então quero vir aqui
ó smartphone aqui apareceu uma duas né quero contar quantas vezes ele vai aparecendo ao longo dessa coluna mesma coisa para tablet para televisão como que eu eu posso fazer isso gente eu tenho esse método value counts então ó Primeira coisa eu vou acessar a coluna que eu quero contar produto e agora vou invocar um método em cima dessa series tá vai ser ponto value counts Olha o poder disso aqui galera ele varreu né Toda essa coluna e contou guarda roupa aparece cinco vezes fogão aparece três vezes geladeira três vezes colchão três Smartphone 2as e assim
por diante olha só que legal muito muito legal Ah quero contar vendedor Maria das Graças né fez mais vendas apareceu 12 vezes depois José Maria depois Jorge Mateus e assim por diante muito legal outro método muito legal é esse I Unic eu quero ver aqui agora quantos produtos distintos eu tenho ó Então vem aqui ó produtos e chamo esse Meu método aqui ó i Unic Opa acessei aqui ó produtos tá dando alguma coisa errada hein tá dando que erro ele tá falando que esse esse que erro ele tá falando que a coluna não existe porque
é produto né produto ó é produto não é produtos então ó se eu colocar produtos ele que erro não tô achando produtos Vinícius então produto ponto e Unic ó olha só que legal ele traz uma lista agora para mim dos produtos distintos isso aqui é um iterable também posso fazer um for aqui posso iterar sobre esses valores distintos e olha só que legal se eu quero saber quantos valores distintos eu tenho eu poderia usar aquele método Len aqui para ver o tamanho dessa lista só que eu já tenho um método que é o n e
Unic que é o número de elementos únicos então ó se eu colocar aqui um n e Unic ele vai trazer o 16 aqui pra gente bem legal né Então deixa eu colocar aqui o value counts para ficar aqui como referência V counts aqui embaixo DF pon Opa DF não é produto dessa forma ponto Unic e também ó deixa eu colocar mais uma célula aqui pra gente colocar o nosso DF produto dessa forma ponto n e Unic e Unic então o pandas ajuda demais a gente velho demais mesmo seguindo lembra que eu falei lá no início
sobre agrupamento de dados Olha só como é fácil fazer isso aqui no pandas imagina que agora eu queira agrupar os meus dados Opa meus dados por produto aqui ó por essa coluna produto que que eu vou fazer eu tenho uma função chamada group byy group byy vou passar aqui ó o nome da coluna que eu quero agrupar os dados que vai ser o quê produto se eu fizer só isso ele já retorna aqui pra gente que é um objeto Data Frame group by é um Data Frame agrupado olha só que legal agora eu tenho que
especificar a coluna que eu quero aplicar uma agregação uma função de agregação então para não ficar confuso vamos vamos voltar aqui ó no R eu quero agrupar por produto e aí eu quero pegar esse valor total e somar fazer uma agregação quero somar Então a gente vai fazer o seguinte DF P group by por produto Sim vou escolher a minha coluna valor total olha só que legal e agora eu posso só chamar minha função de agregação ponto Sam ó pon somar Olha aqui que legal ah não quero a soma Vinícius eu quero e a média
então ponto mim eu posso aplicar diversas funções de agregação aqui muito muito muito legal ah não quero agrupar por produto eu quero por vendedor e aí eu quero a soma então eu quero valor total vendido ali por vendedor né tô agrupando por vendedor olha só que demais gente valor total do Jorge Mateus da José Maria do José Maria da Maria das Graças então eu posso fazer um monte de tipo aqui de agrupamento de dados e agregações tá E aqui essa Pivot table é uma função muito é um método muito muito muito poderoso ele consegue fazer
essa agregação aqui e coisas a mais olha só que legal se eu chamar aqui o meu DF p pivotable ao invés de group by agora eu vou ter que passar alguns parâmetros para ele tá E aí você tem que anotar aí que ela é um pouquinho mais complexa Mas ela é um pouquinho um pouquinho não muito mais poderosa Então a primeira coisa é o índex o índex É por qual coluna eu queira eu quero agrupar vamos fazer por produto ó quero por produto depois no values eu vou escolher qual coluna que eu quero aplicar a
minha função de agregação vou continuar aqui ó no valor total é valor total final né valor total e depois ó eu tenho o agg funk que eu falo qual que é a função de agregação que eu quero aplicar vai ser o s olha só ele já fez aqui pra gente muito muito legal poderosíssimo igual group byy só que com pivotable eu consigo criar uma matriz aqui olha só que legal eu consigo passar mais um parâmetro aqui ó colons e falar que eu quero vend D também eu não consigo fazer isso com group byy olha só
o que que ele faz gente ele traz ele agrupou pelo produto a gente tá fazendo um Sam do valor total do produto e aqui em cima ele trouxe os vendedores aqui pra gente então ele tem um cruzamento só que ele coloca esse n aqui né por que que ele coloca esse n que é nota Number é porque a batedeira só a Maria das Graças vendeu batedeira cafeteira foi só Maria das Graças colchão o Jorge Mateus vendeu José Maria vendeu e a maioria das Graças Não mas aí fica feio esse n né então eu tenho um
outro parâmetro aqui que é o o fio velo e vou pôr zero agora já ficou mais bonito Então olha só gente eu consigo cruzar um monte de informações ele tem outra coisa aqui que chama margins se eu colocar isso aqui como true como verdadeiro olha só ele traz aqui ó esse All do lado e esse All no final que é o quê o somatório das Linhas Olha que demais e o somatório das colunas então eu consigo ver o seguinte ó batedeira Maria das Graças que vende olha vamos pegar o que tem mais aqui ó colchão
José o Jorge Mateus vendeu um total de 1860 a José Maria vendeu um total de 620 ele aqui ele traz o total do valor de colchão vendido e aqui embaixo ele traz o total ó do Jorge Mateus do José Maria olha só monto uma matriz aqui para cruzar dados né já agregados já agrupados para eu fazer minhas análises de dados Então essa função gente ela é incrível incrível você precisa realmente dominar essa função aqui para você fazer muitas análises tá de dados Seguindo aqui a gente não pode parar né não pode perder tempo aqui no
YouTube como que a gente filtra linhas Então deixa eu ver aqui ó nosso head vou te ensinar aqui um método chamado quer Então imagina que eu queira buscar todas as vendas onde o produto é o tablet como que eu faço isso usando esse método query olha só ó vou chamar o método query aqui agora presta bem atenção hein eu vou usar aspas duplas Vou chamar o nome da minha coluna que eu quero filtrar ó produto o igual lembra que o igual no Python são dois sinais de iguais não é um só um sinal de igual
é atribuição né e a igualdade mesmo são dois sinais de iguais e agora como eu quero filtrar o produto por uma string porque a coluna é uma string não é Então olha só eu tenho que usar aspas simples ó vou colocar o nome do produto entre aspas simples por isso que eu usei aspas duplas para para é passar esse parâmetro aqui para esse método qu Então vou colocar aqui ó tablet olha só que legal ele busca aqui todas as vendas de tablet Smartphone Smartphone todas as vendas de Smartphone né Muito muito muito legal muito poderoso
esse método tá vou te ensinar também a filtrar as linhas quando o nosso índice é um date time lembra que o nosso índice é agora um date time olha só aqui ó um date time Então se a gente colocar um DF aqui Opa apertei um um F2 aqui sem querer abrir o meu Dev Tools quando eu faço isso aqui ó um DF ponto ol esse ponto não deixa eu só mostrar um DF aqui imagina o seguinte meu tá tá dando esse risco aqui que deu algum problema aqui no software que eu uso para arriscar a
tela não tem problema nenhum não aqui em data venda imagina que Eu queiro acessar a primeira linha é 2020 né 19 do do 10/2020 eu posso usar o lock a gente já aprendeu isso daqui que é o nome né Essa primeira linha aqui o índice dela é zero e o nome do índice agora olha só como é que vai ficar mais claro o nome do índice é 19/10 de2020 então eu posso vir aqui ó colocar um Lock e passar o seguinte ó 2020 10 19 Eu vou acessar não só a primeira linha mas vou acessar
assim todas as linhas em que o nome do índice for 19/10 de2020 só que nosso caso aqui só tem uma linha agora gente olha só que legal quando eu tenho um índice que ele é date time se eu quiser buscar todas as vendas do ano de 2000 é só colocar assim ó demais não é ele buscou tudo que tem o ano de 2000 se eu quiser buscar tudo que é do mês oito do ano de 2000 olha só que legal eu consigo usar partes da minha data quando ela é no índice com Lock para fazer
essas buscas muito muito muito poderoso eu quero buscar mês um de 2020 ele busca tudo que é do mês um de 2020 ou só o ano tá é muito muito legal e pra gente fechar esse tutorial aqui super rápido mas super rico né com dicas muito boas aqui sobre o pandas principalmente para você que tá começando agora você tem que entender esses conceitos que eu estou passando quero te mostrar que a gente consegue exportar um Data Frame Então deixa eu chamar aqui o meu DF a a gente fez algumas modificações nele né a gente colocou
aqui data venda como índice e tem aqui produto a gente colocou esse valor total aqui imagina que eu queira exportar esses dados agora para mandar para alguém eu posso fazer o seguinte ó eu tenho uns métodos aqui quando lembra que a gente usava o read lá né para ler agora a gente vai usar o tu Don Tab ó eu posso mandar esses dados para csv para HTML PR json para Excel olha só que demais então vou exportar isso aqui para um Excel vou chamar ele de relatório vendas. xlsx Olha só o poder do pandas gente
o pandas realmente ele é muito poderoso ó exportei quero exportar ele também para um csv imagina que eu vou mandar para alguém usar isso importar isso em algum sistema ele precisa como csv então df. csv relatório vendas.csv Olha só deixa eu voltar aqui agora e agora eu tenho aqui o meu relatório vendas csv que a gente criou E também o nosso relatório vendas ó o valor total aqui no final ó tá aqui muito muito muito legal então galera era isso que eu queria mostrar para vocês hoje espero que esse vídeo tenha trazido conhecimentos que vão
te ajudar aí nesse mundo de análise de dados principalmente para quem está começando se você curtiu não esquece de deixar o seu like se inscrever aqui no vídeo porque agora eu tô cada vez mais empenhado aqui no canal trazendo um monte de conteúdos quero pôr mais de um vídeo por semana aqui e preciso contar com o seu apoio então compartilhe esse vídeo com outras pessoas que estão querendo aprender Python que estão querendo aprender pandas tá estão querendo aprender sobre programação tá não esqueça deixe o seu like aí e se inscreva no canal um grande abraço
e até o nosso próximo tutorial