Estratégias que NÃO TE ENSINAM para trabalhar com dados GIGANTES no PYTHON

Поділитися
Вставка
  • Опубліковано 4 жов 2024
  • Conheça a trilha Python para Data Science e Machine Learning,:
    asimov.academy...
    Saber utilizar o Pandas adequadamente para processar arquivos gigantes é uma habilidade que apenas cientistas de dados avançados dominam.
    Ao longo dos últimos 10 anos trabalhei aplicando Data Science no desenvolvimento de estratégias de investimento e precisava lidar com arquivos absurdamente pesados... tabelas que somadas chegavam a 50TB... e para realizar simulações adequadamente, aprendi uma série de técnicas diferentes. Neste vídeo compartilho algumas delas.

КОМЕНТАРІ • 62

  • @dedeoliveira82
    @dedeoliveira82 7 місяців тому +6

    Impressionante essa estratégia de ajustar os tipos de dados que sao lidos como object! Em um dataframe aqui de exercicios que estava fazendo originalmente fora lido com 63 MB. Após simplesmente ajustar os tipos de dados de 05 colunas o tamaho do dataset foi reduzido para 29 MB. Um ganho (reduçao) de 46%. Muito obrigado por esta videoaula.

  • @F4RL3Y
    @F4RL3Y 7 місяців тому +6

    Excelente! Estou construindo um projeto para operar no mercado e meu market data possui 13 milhões de linhas, vai me ajduar demais!!!!

  • @denisbrunomoraisneves2471
    @denisbrunomoraisneves2471 7 місяців тому +4

    Essa aula ensina muito mais que uns cursos completo por ai viu, parabens!!

  • @gilissantos6532
    @gilissantos6532 7 місяців тому +2

    Ótimo conteúdo como sempre, um assunto extremamente importante, tipo de dados para processamento, otimizar tempo porque é uma coisa valiosa demais para perder.

  • @laurenceribeiro
    @laurenceribeiro 8 місяців тому +4

    Ótimo vídeo! Estou lendo um livro chamado: “Python para Análise de Dados”, e coincidentemente hoje mesmo estava lendo um capítulo sobre os tipos de arquivos que o Pandas lê e apareceu esse formato de arquivo Apache Parquet. Muito bom 👏🏻👏🏻👏🏻

    • @Ragnarok906
      @Ragnarok906 7 місяців тому +1

      Qual o nome do livro?

    • @laurenceribeiro
      @laurenceribeiro 7 місяців тому +1

      @@Ragnarok906 Python para Análise de Dados - 3ª edição do Wes McKinney.

  • @tcbandeira
    @tcbandeira 7 місяців тому +1

    Poxa isso sim que é aula pratica de verdade! O rigado mestre!

  • @IsraelJMCarvalho
    @IsraelJMCarvalho 7 місяців тому +2

    Fantástico, incrível e surpreendentemente útil... São vídeos assim que mudam radicalmente algumas práticas e costumes que temos.

  • @WagnerOshange
    @WagnerOshange 2 місяці тому

    Vídeo simplesmente incrível, ainda não tenho muito conhecimento sobre Python e muito menos Python aplicado no dia-dia (para análises variadas...) contudo seu vídeo foi bem explicativo, despertou meu interesse em aprender bem mais

    • @AsimovAcademy
      @AsimovAcademy  2 місяці тому

      Ficamos felizes que tenha gostado e que despertou o seu interesse. Nos chama no whatsapp para que possamos te apresentar a escola. Nosso WhatsApp é: wa.me/555197100833

  • @higorhenrique6988
    @higorhenrique6988 10 днів тому

    Se você precisa utilizar 'groupby', faça antes de transformar em 'category', se não vai retornar um erro de tamanho excedente

  • @hygosousa1170
    @hygosousa1170 Місяць тому

    Uau... excelente dica. Muitíssimo obrigado.

    • @AsimovAcademy
      @AsimovAcademy  Місяць тому

      @@hygosousa1170 nós que agradecemos!

  • @samuelmartins82
    @samuelmartins82 7 місяців тому +4

    Seria possível, com o pandas, particionar os dados em diretórios, como fazemos com o PySpark ? Por exemplo, se um df tiver dados de 3 anos diferentes, as partições seria 1 diretório pra cada ano + 1 diretório pra cada mês.

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому +6

      Oi, Samuel, é possível sim, é um processo bem tranquilo. Para ser sincero, eu não conheço nenhuma forma de fazer isto nativamente no Pandas (uma função dele que faça isto para você), mas eu costumava fazer exatamente isto que você descreveu através de um for loop que iterava sobre meses e anos do DataFrame. e exportava meus dados de negociações da bolsa em diversas pastas. Não dá nem 10 linhas de código.
      Abraços!

    • @fabioa8059
      @fabioa8059 3 місяці тому +1

      Não faz sentido fazer isso. Existem outras libs específicas para tratar big data com máquinas fracas como o dask e o Polars. Se você quiser pode até usar depois pandas mas faz muito mais sentido continuar usando essas ferramentas ao invés de pandas que nem paraleliza

  • @ArthurYoutube-abcd
    @ArthurYoutube-abcd 2 місяці тому

    Ainda mais rápido e mais leve que o .parquet, seria o .feather. Lembrando que não pode ter valores NaN, e também necessita do pacote pyarrow instalado

  • @GilsonFabiano
    @GilsonFabiano 7 місяців тому +1

    Bacana, tem vídeos no canal sobre essa análise de trades in time e livro de ofertas?

  • @JuniorMarques79
    @JuniorMarques79 22 дні тому

    Pouco é falado do DuckDB nos canais BR. O vídeo é muito bom, mas está bem desatualizado em relação as opções para processamento OLAP.

  • @SkySesshomaru
    @SkySesshomaru 8 місяців тому +2

    Caralho, esse vídeo foi FODA.
    Muito maneiro mesmo.

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому +1

      Fico feliz que tenha te ajudado! Abração!!

  • @geovanidias5825
    @geovanidias5825 8 місяців тому +1

    Show de bola! Excelente vídeo. Parabéns e sucesso!

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому +1

      Fico feliz que tenha gostado! Abraços, Geovani!

  • @AlmirBispo-CSV-Comp-DB
    @AlmirBispo-CSV-Comp-DB 7 місяців тому +1

    Existe um banco tipo newsql/ nosql especializado em CSV

  • @diegovaler5204
    @diegovaler5204 7 місяців тому +1

    excelente explicação

  • @HENRIQUECANDINHO
    @HENRIQUECANDINHO 7 місяців тому +1

    Muito bom!

  • @Casdias
    @Casdias 3 місяці тому

    Como você configurou o seu pycharm pra visualizar as execuções assim!?

  • @Daxiannn
    @Daxiannn 7 місяців тому +1

    Bom dia. Sabe me dizer se é possivel combinar dados de ativos ou tirar o spread de ativos e criar um gráfico sintético com a combinação desses ativos e acompanhar em tempo real com Python? Por exemplo juros de 10 anos dos EUA (us10y) -(subtração) pelo juros da alemanha de dez anos(de10y) e gerar um gráfico

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому +2

      Olá! É possível, sim, desde que tenha acesso a market data.

  • @bcavalcante
    @bcavalcante 5 місяців тому

    Muito bom! Obrigado.

  • @marcosgomes3140
    @marcosgomes3140 7 місяців тому +1

    Pra quem tem o mínimo de noção em python, acho que nem desenhando ficaria tão claro.
    🤣🤣👏🏼👏🏼👏🏼👏🏼

  • @folcloremacabro
    @folcloremacabro 4 місяці тому

    Como se executa no terminal interativo?

  • @canaljesusnazareno
    @canaljesusnazareno 7 місяців тому +1

    Puts, dica de ouro! Adiantou 01 ano de estudo em poucos minutos rsrsrs

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому +1

      Fico feliz que tenha ajudado! Abraços!!

  • @RodrigoGallaro
    @RodrigoGallaro 7 місяців тому

    Top demais os vídeos! Consegue um cupom de desconto pra quem está pensando em assinar o curso no site?

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому

      Olá, Rodrigo! Fale com um de nossos consultores pelo WhatsApp wa.me/555197100833
      Iremos ajudá-lo a encontrar a melhor solução!

  • @SrPedroS
    @SrPedroS 7 місяців тому

    Muito bom! Tem algum vídeo de como criar esse terminal interativo?

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому

      Oi, Pedro, tem sim! Neste vídeo eu explico o passo a passo:
      ua-cam.com/video/ol_S9G0nCNE/v-deo.html&ab_channel=AsimovAcademy
      Abraços!

  • @weversonmachado5333
    @weversonmachado5333 6 місяців тому

    Ótimo!

  • @F4RL3Y
    @F4RL3Y 7 місяців тому +1

    Uma dúvida, estou utilizando o sqlite3 pois o desempenho para leitura dos dados é significativamente maior do que o mysql. Considera que seria recomendável utilizar esse .parquet neste caso? O sqlite3 foi apenas uma maneira que encontrei ir guardando e organizando os dados através de arquivos.

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому

      Sugiro fazer o teste. Extraia os dados da sua base sql, salve em parquet e faça uma comparação no tempo de leitura. Melhor sempre validar antes de fazer grandes mudanças.

  • @Fabricio-rm4hj
    @Fabricio-rm4hj 8 місяців тому +1

    Muito bom, onde encontro esse dataset? gostaria de reproduzir esse estudo.

    • @brunodiasvibe
      @brunodiasvibe 8 місяців тому +1

      Site kaggle

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому +1

      Oi, Fabricio. Infelizmente peguei este dataset no Kaggle há bastante tempo e perdi sua origem. Mas existem muitos datasets semelhantes lá produzirão o mesmo resultado. Este aqui é um exemplo:
      www.kaggle.com/datasets/giovamata/airlinedelaycauses
      Abraços!

    • @BassAtoZ
      @BassAtoZ 7 місяців тому +1

      Excelente vídeo! Experimento isso na prática com os datasets do ENEM. Normalmente para fazer a leitura sem estourar a memória, faço testes de ler partes (seleciono) de linhas ou colunas do dataset. Vou experimentando até chegar a capacidade máxima de memória. Carregar o dataset inteiro estoura a memória. Alguma sugestão de como conseguir um dataset grande otimizando a memória. Não conseguiria aplicar essas duas técnicas que mostrou, sem carregar o dataset inteiro. Em minha máquina ou nas máquinas virtuais (colab) da Google, não consigo carregar um dataset completo para leitura e aplicar essa técnica. Sugestões são bem vindos!!!
      Absss ❤

  • @muriloeziliano5353
    @muriloeziliano5353 7 місяців тому +1

    Tu poderia passar o link do kaggle pra tentar acompanhar o teu código?

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому +1

      Oi, Murilo. Infelizmente peguei esse dataset no Kaggle há bastante tempo e perdi sua origem. Mas existem muitos datasets semelhantes lá produzirão o mesmo resultado. Este aqui é um exemplo:
      www.kaggle.com/datasets/giovamata/airlinedelaycauses
      Abraços!

  • @medeirosvig
    @medeirosvig 7 місяців тому +1

    onde eu consigo esse arquivo de exemplo?

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому +1

      Olá! Infelizmente peguei esse dataset no Kaggle há bastante tempo e perdi sua origem. Mas existem muitos datasets semelhantes lá que produzirão o mesmo resultado. Este aqui é um exemplo:
      www.kaggle.com/datasets/giovamata/airlinedelaycauses
      Abraços!

  • @antoniocferreira7337
    @antoniocferreira7337 7 місяців тому

    Fui instalar o pandas, direciona para o site para instalar o Anaconda que tem varias libs. Quando eu copio o pandas.py e importo o pandas começa a pedir outras dependencias da lib e quanto mais eu copio no diretorio que estou testando, mais dependencia surge, tem como resolver isso? Ou tem outra forma de instalar/usar o pandas no python?

  • @denisbrunomoraisneves2471
    @denisbrunomoraisneves2471 7 місяців тому

    Alguma outra forma para importação mais rapida de importar SQL? tenho usado o chunk, existe alguma outra forma?

    • @AsimovAcademy
      @AsimovAcademy  7 місяців тому

      Olá, Denis! Isso depende de várias questões (qual banco SQL usa, como é o ambiente dele, onde o banco é hospedado etc.).

  • @anselmomendes9585
    @anselmomendes9585 6 місяців тому

    13:53

  • @giovanesilveiradasilveira994
    @giovanesilveiradasilveira994 8 місяців тому +1

    👋👋👋

  • @freddoliveira
    @freddoliveira 6 місяців тому

    .

  • @infogenuino
    @infogenuino 4 місяці тому

    Porque o python não mostra todo conteudo da planilha? tenho um planilha de 41 mil linhas, onde tem dados de idade, começa na idade 17, quando chega no 36, ai pula 89, fica aparecendo só os risquinhos, exemplo abaixo,
    33 1833
    36 1780
    35 1759
    ...
    89 2
    91 2

    • @fabioa8059
      @fabioa8059 3 місяці тому

      Porque gasta memória ram. Se quiser visualizar tudo é melhor trabalhar com Excel