Trabalhando com Inteiros Anuláveis

Beginner

This tutorial is from open-source community. Access the source code

Introdução

Neste laboratório, exploraremos como usar o tipo de dado inteiro anulável (nullable integer) no pandas, que é uma forma eficiente de lidar com dados inteiros que podem conter valores ausentes. Aprenderemos como construir arrays com este tipo de dado, realizar operações e lidar com valores ausentes de forma eficaz.

Dicas para a VM

Após a inicialização da VM, clique no canto superior esquerdo para mudar para a aba Notebook e acessar o Jupyter Notebook para praticar.

Às vezes, pode ser necessário aguardar alguns segundos para que o Jupyter Notebook termine de carregar. A validação das operações não pode ser automatizada devido às limitações do Jupyter Notebook.

Se você enfrentar problemas durante o aprendizado, sinta-se à vontade para perguntar ao Labby. Forneça feedback após a sessão, e resolveremos o problema prontamente para você.

Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 100%. Recebeu uma taxa de avaliações positivas de 100% dos estudantes.

Construindo Arrays de Inteiros Anuláveis

O Pandas fornece a classe IntegerArray para criar arrays de inteiros anuláveis. Vamos começar criando um IntegerArray.

## Importar as bibliotecas necessárias
import pandas as pd
import numpy as np

## Criar um IntegerArray com valores ausentes
arr = pd.array([1, 2, None], dtype=pd.Int64Dtype())
## Output: <IntegerArray>
## [1, 2, <NA>]
## Length: 3, dtype: Int64

Você também pode usar o alias de string "Int64" para especificar o tipo de dado ao criar o array. Todos os valores semelhantes a NA são substituídos por pandas.NA.

## Criar um IntegerArray usando o alias de string "Int64"
arr = pd.array([1, 2, np.nan], dtype="Int64")
## Output: <IntegerArray>
## [1, 2, <NA>]
## Length: 3, dtype: Int64

Armazenando o IntegerArray em um DataFrame ou Series

Depois de criar um IntegerArray, você pode armazená-lo em um DataFrame ou Series. Vamos criar um Series a partir do IntegerArray que criamos.

## Criar um Series a partir do IntegerArray
series = pd.Series(arr)

Realizando Operações com Arrays de Inteiros Anuláveis

Você pode realizar várias operações com arrays de inteiros anuláveis, como operações aritméticas, comparações e fatiamento (slicing).

## Criar um Series com tipo de inteiro anulável
s = pd.Series([1, 2, None], dtype="Int64")

## Realizar operação aritmética
s_plus_one = s + 1 ## adiciona 1 a cada elemento no series

## Realizar comparação
comparison = s == 1 ## verifica se cada elemento no series é igual a 1

## Realizar operação de fatiamento (slicing)
sliced = s.iloc[1:3] ## seleciona o segundo e terceiro elementos no series

Lidando com Valores Ausentes com pandas.NA

A classe IntegerArray usa pandas.NA como seu valor escalar ausente. Quando você fatia (slice) um único elemento que está ausente, ele retornará pandas.NA.

## Criar um IntegerArray com um valor ausente
a = pd.array([1, None], dtype="Int64")

## Fatiar (slice) o segundo elemento que é um valor ausente
missing_value = a[1]
## Output: <NA>

Resumo

Este laboratório demonstrou como trabalhar com tipos de dados inteiros anuláveis em pandas, incluindo como construir arrays, armazená-los em um DataFrame ou Series, realizar operações e lidar com valores ausentes. Ao usar o tipo de dado inteiro anulável, você pode lidar com dados inteiros com valores ausentes de forma mais eficiente.