Usando notebooks do Python (ipynb)
Publicado em · 8 min de leitura
- Marcos Eduardo
É notório que Python se tornou uma linguagem de programação amplamente utilizada na área de dados. A sua popularidade se deve a vários fatores, dentre eles, a sua sintaxe simples, a sua grande comunidade de usuários e o seu grande repertório de bibliotecas especializadas para análise e ciência de dados.
Para a sua utilização em projetos, é muito comum adotarmos uma ferramenta interativa chamada Jupyter Notebook. O nome te parece estranho? Você já ouviu falar, mas nunca entendeu realmente o que é? Ou você já até o utilizou, mas não se sente com tanta segurança explorando as suas ferramentas? Então este artigo poderá te ajudar com essas dúvidas. Vamos lá!
O que é um notebook?
Um notebook é uma evolução do conceito de um caderno comum, em que se pode escrever uma história em partes, seguindo um fluxo lógico que vai desde a introdução até a conclusão. Nos projetos de ciência de dados, contudo, a história a ser contada é a da solução de um problema de negócios, para isso, precisamos descrever os objetivos, as possíveis soluções para o problema e as conclusões às quais chegamos após examinar os dados.
O notebook nos permite criar blocos de texto e blocos de código, chamados de células, que organizam e estruturam nossa história de forma clara e objetiva.
Ao utilizar os blocos de texto em nosso notebook, podemos fornecer uma explicação completa do contexto do projeto, de seus objetivos, informações importantes extraídas dos dados e as possíveis soluções para o problema que estamos tentando resolver. Para a formatação do texto, utilizamos uma linguagem simples de Markdown, que ajuda a estruturar o conteúdo de forma clara e organizada.
Nele, também temos a possibilidade de explorar um conjunto de dados, de realizar o tratamento e a limpeza dos dados e de criar gráficos e outras visualizações. Os resultados gerados pelos blocos de código são exibidos logo abaixo de suas respectivas células, permitindo a visualização dos resultados de forma imediata. Além disso, não é necessário executar todo o código sempre, já que o processo fica armazenado na memória e as células podem funcionar de forma independente, o que torna o processo mais eficiente e fácil de gerenciar.
O que é Jupyter Notebook?
O nome Jupyter é um acrônimo criado a partir das linguagens de programação que foram inicialmente aceitas pelo projeto: Julia, Python e R. Atualmente, o Jupyter suporta várias outras linguagens de programação, como C++, Ruby e Fortran. Ele é uma ferramenta muito útil para quem deseja executar código de forma interativa, o que o torna ideal para tarefas como o processamento exploratório de dados, simulações numéricas, modelagens estatísticas e até mesmo machine learning. Graças à sua versatilidade e flexibilidade, o Jupyter é uma das ferramentas mais populares entre cientistas de dados e desenvolvedores.
Instalação
Há duas maneiras principais de instalar o Jupyter Notebook para Python: por meio do gerenciador de pacotes pip ou por meio da distribuição Anaconda. A instalação do Jupyter Notebook usando o pip segue o mesmo processo que a instalação de outras bibliotecas e módulos do Python, basta digitar o seguinte comando e pressionar Enter:
pip install jupyter
No caso da Anaconda, a instalação padrão já inclui o Jupyter Notebook. Para realizar a instalação dessa forma, basta ir até o site oficial e seguir as instruções da página de download para o seu sistema operacional.
Abrindo o Jupyter
- Se você instalou o Jupyter Notebook via pip, para abri-lo, basta entrar em um terminal e digitar o comando “jupyter notebook”. Em seguida, o Jupyter Notebook será aberto em seu navegador padrão automaticamente.
- Por outro lado, se você instalou o Jupyter Notebook usando o Anaconda, você pode encontrá-lo facilmente usando a barra de pesquisa do Windows ou Linux. Basta abrir o menu Iniciar, procurar por “Jupyter Notebook” e clicar no ícone. Isso abrirá o Jupyter Notebook em seu navegador padrão.
Feito isso, será aberta a página inicial do Jupyter.
Assim que o Jupyter Notebook abre, a primeira tela que aparece é a página inicial, que é dividida em três abas: “Files”, “Running” e “Clusters”.
A aba “Files” é a primeira aba exibida ao abrir o Jupyter Notebook, ela exibe o diretório de trabalho atual e permite navegar pelos arquivos e pastas do sistema de arquivos. A partir daqui, é possível criar novos notebooks, abrir notebooks existentes, criar novos diretórios, renomear e excluir arquivos e pastas. A aba “Files” também fornece uma interface para upload e download de arquivos.
A aba “Running”, por sua vez, exibe uma lista dos notebooks atualmente em execução no servidor Jupyter, bem como quaisquer terminais ou kernels associados a eles. Essa aba é especialmente útil para gerenciar o uso do servidor Jupyter, pois permite que o usuário interrompa ou reinicie a execução de notebooks ou kernels, bem como visualize o uso de recursos do sistema.
Já a aba “Clusters” permite que o usuário configure e gerencie clusters de computação para executar cálculos de grande escala em paralelo. Isso é especialmente útil para tarefas que exigem muita computação e que podem ser divididas em várias tarefas menores, cada uma executada em um núcleo de processamento separado.
Abrindo ou editando um notebook
Criar um Jupyter Notebook é bem simples, basta clicar no botão “New” no canto direito e selecionar Python 3 (se você tiver outros kernels instalados, como o Python 2 ou o R, por exemplo, você também poderá escolhê-los).
O notebook será criado e aberto em uma nova aba.
Pronto! Agora você pode começar a digitar o código em uma célula, adicionar texto explicativo ou criar visualizações. Para executar o código, basta pressionar “Shift + Enter” ou clicar no botão “Run” na barra de ferramentas.
Dicas de uso
Modos das células
O Jupyter Notebook possui dois modos diferentes para a célula: o modo de edição e o modo de comando. Quando a célula está no modo de edição, o usuário pode editar o conteúdo da célula, seja ele um código ou um texto formatado em Markdown, por exemplo. Por outro lado, no modo de comando, o usuário pode manipular a célula, executar o código, compilar o texto Markdown, deletar a célula, copiar e recortar células, criar novas células, alterar o tipo de célula, fundir duas ou mais células e outras ações disponíveis na barra de ferramentas. Esses dois modos permitem que o usuário possa trabalhar de maneira eficiente e flexível no Jupyter Notebook.
É importante notar que, quando uma célula está no modo de edição, a borda é destacada com uma cor verde.
Já um célula em modo comando, a borda é destacada com uma cor azul.
Atalhos do teclado
O Jupyter Notebook possui vários atalhos de teclado que podem ajudar o usuário a trabalhar de maneira mais eficiente e rápida.
Os atalhos a seguir estão implementados por default para a célula no modo comando:
- Ctrl-Enter: executa a célula atual sem selecionar a próxima célula;
- Shift-Enter: executa a célula atual e seleciona a próxima célula (ou cria uma nova célula, se a célula atual for a última);
- Alt-Enter: executa a célula e cria uma nova célula abaixo no modo de edição;
- Y: muda a célula para o tipo código;
- M: muda a célula para o tipo Markdown;
- A: insere uma nova célula acima da atual;
- B: insere uma nova célula abaixo da atual;
- X: recorta a célula selecionada;
- C: copia a célula selecionada;
- V: cola a célula copiada ou recortada abaixo da célula atual;
- shift-V: cola a célula do clipboard acima;
- D, D: deleta uma célula selecionada;
- Z: desfaz a última ação;
- L: ativa a enumeração das linhas.
Os seguintes atalhos estão implementados por default para a célula no modo de edição:
- Tab: autocompleta durante a digitação;
- Shift-Tab: abre uma minijanela com parte da documentação sobre a parte do código durante a documentação.
Esses são apenas alguns dos atalhos de teclado disponíveis no Jupyter Notebook. Para ver a lista completa de atalhos, basta pressionar a tecla “H” no modo de comando.
Dicas
- Reinicie o kernel: se o seu código não está funcionando corretamente, pode ser útil reiniciar o kernel. Isso limpará todas as variáveis do ambiente e permitirá que você execute seu código novamente a partir do início.
- Use extensões: o Jupyter Notebook possui uma variedade de extensões disponíveis que podem adicionar funcionalidades adicionais ao seu notebook. Algumas das extensões mais úteis incluem: Table of Contents (cria um índice de todas as seções do seu notebook), Collapsible Headings (permite que você colapse e expanda as seções do seu notebook) e ExecuteTime (mostra o tempo de execução de cada célula).
- Versione o seu notebook: se você está trabalhando em um projeto maior, é uma boa ideia versionar seu notebook para controlar as alterações ao longo do tempo. Você pode usar uma ferramenta de controle de versão, como o Git, para gerenciar suas alterações e colaborar com outras pessoas.
Referências
Revisão de texto: Vinicius Fialho
- Introdução Ao Jupyter Notebook | Let's Code
- Introdução ao Jupyter Notebook Para Python
- Jupyter Notebook: Exemplos de Códigos e Como Usar | Alura
Publicado originalmente no Medium da UFRJ Analytica em 18 de abril de 2023.