Pandas
Carregando, aguarde alguns segundos.

2 - Classe Series

A classe Series no Pandas é um ndarray do tipo matriz unidimensional, que inclui rótulos de eixos, como séries temporais.

Esses rótulos, que devem ser do tipo hashable, não precisam ser únicos e exclusivos.

A Series oferece suporte à indexação tanto por números inteiros quanto por rótulos, e fornece uma variedade de métodos para operações baseadas no índice.

Os métodos estatísticos do ndarray são modificados na Series para automaticamente excluir dados ausentes, representados como NaN.

Operações entre séries, como adição, subtração, divisão, multiplicação e exponenciação (+, -, /, *, **), alinham os valores com base nos seus índices, não exigindo que as séries tenham o mesmo comprimento.

O índice resultante dessas operações será a união classificada dos dois índices envolvidos.

O cabeçalho da classe Series é descrito como a seguir:

class pandas.Series(data=None, index=None, dtype=None, name=None, copy=None, fastpath=False)

onde:

  • data: valor semelhante a uma matriz, iterável, ditado ou escalar. Contém dados armazenados em série. Se os dados são um ditado, a ordem dos argumentos é mantido.
  • index: tipo matriz ou índice (1d). Os valores devem ser hashable e ter o mesmo comprimento dos dados. Valores de índice não exclusivos são permitidos. O padrão será RangeIndex(0, 1, 2,..., n), se não for fornecido. Se os dados são ditados e o index é None, então as chaves nos dados são usadas como índice. Se o index não é None, a série resultante é reindexada com os valores do índice.
  • dtype: str, numpy.dtype ou ExtensionDtype, opcional. Tipo de dados para a série de saída. Se não especificado, isso será inferido dos dados. Veja o guia do usuário para mais usos.
  • name: Hashable, valor-padrão None, opcional. Nome para a série.
  • copy: bool, valor-padrão False. Se True, a série será copiada. Se False, a série será modificada.

A seguir serão apresentados os agrupamentos por funcionalidade de métodos e atributos da classe Series.

Observe a função a seguir:

def imprimir_resultado(titulo, comando, resultado, obs=""):
  aux = f"--- {comando}: {titulo} "
  aux += '-' * (80 - len(aux))
  print(aux)
  print(resultado)
  if obs: print("obs:", obs)
  # print('-' * 80)
  print()

2.1 - Construtor

Objeto do tipo Series. Ndarray unidimensional com rótulos de eixos (incluindo séries temporais).

Series([dados, índice, dtype, nome, cópia, ... ])

2.2 - Atributos e Métodos

index Retorna o índice com a classificação de rótulos dos eixos da série.
array Retorna a matriz de extensão dos dados que suportam esta série ou índice.
values Retorna a Série do tipo ndarray ou similar, dependendo do dtype.
dtype Retorna o objeto dtype dos dados subjacentes.
shape Retorna uma tupla da forma dos dados subjacentes.
nbytes Retorna o número de bytes nos dados subjacentes.
ndim Retorna o número de dimensões dos dados subjacentes, por definição 1.
size Retorna o número de elementos nos dados subjacentes.
T Retorna a transposição, que é por definição auto.
hasnans Retorna True se houver NaNs.
empty Retorna se série está vazia.
dtypes Retorna o objeto dtype dos dados subjacentes.
name Retorna o nome da série.
flags Retorna as propriedades associadas a este objeto de pandas.
set_flags(* [, copy=..., ... ]) Retorna um novo objeto com sinalizadores atualizados.
memory_usage(index=..., deep=...) Retorna o uso de memória da série.

Exemplo: Atributos e métodos de uma série.

Criamos uma série de exemplo.

import pandas as pd
data = [10, 20, 30, 40, 50]
index = ['A', 'B', 'C', 'D', 'E']
serie = pd.Series(data, index=index, name='Valores')
print(serie)

index: Índice

Retorna o índice com a classificação de rótulos dos eixos da série.

print(serie.index)

array: Matriz de extensão dos dados

Retorna a matriz de extensão dos dados que suportam esta série ou índice.

print(serie.array)

values: Valores

Retorna a Série do tipo ndarray ou similar, dependendo do dtype.

print(serie.values)

dtype: Tipo de dados (dtype)

Retorna o objeto dtype dos dados subjacentes.

print(serie.dtype)

shape: Forma

Retorna uma tupla da forma dos dados subjacentes.

print(serie.shape)

nbytes: Quantidade de bytes

Retorna o número de bytes nos dados subjacentes.

print(serie.nbytes)

ndim: Dimensões

Retorna o número de dimensões dos dados subjacentes, por definição 1.

print(serie.ndim)

size: Tamanho

Retorna o número de elementos nos dados subjacentes.

print(serie.size)

T: Transposição

Retorna a transposição, que é por definição auto.

print(serie.T)

memory_usage: Uso de memória

Retorna o uso de memória da série.

print(serie.memory_usage())

hasnans: Há NaNs

Retorna True se houver NaNs.

print(serie.hasnans)

empty: Série vazia

Retorna se série está vazia.

print(serie.empty)

dtypes: Tipos de Dados

Retorna o objeto dtype dos dados subjacentes.

print(serie.dtypes)

name: Nome

Retorna o nome da série.

print(serie.name)

flags: Sinalizadores

Retorna as propriedades associadas a este objeto de pandas.

print(serie.flags)

set_flags()

O método set_flags() atualiza as propriedades associadas.

print(f"Valor inicial dos sinalizadores: {(serie.flags.allows_duplicate_labels)}")
serie.set_flags(allows_duplicate_labels=False)
print(f"Sinalizadores atualizados: {(serie.flags.allows_duplicate_labels)}")

2.3 - Conversão

astype() Retorna um objeto convertido do Pandas de um dtype para outro dtype especificado.
convert_dtypes() Retorna as colunas convertidas com os melhores tipos possíveis com suporte pd.NA.
infer_objects() Retorna a inferência os melhores tipos de dtypes para colunas de objetos.
copy() Retorna uma cópia dos índices e dados deste objeto.
to_numpy() Retorna um objeto ndarray representando os valores nesta série ou índice.
to_period() Retorna as séries convertidas de DatetimeIndex para PeriodIndex.
to_timestamp() Retorna o elenco para DatetimeIndex de Timestamps, começando de período.
to_list() Retorna uma lista dos valores.
__array__() Retorna os valores como uma matriz NumPy.

Criação de uma série de exemplo com diferentes tipos de dados

import pandas as pd
data = [1, 2, 3.5, 'hello', 'world']
serie = pd.Series(data, name='Valores')
print(serie)

astype(): dtype

Retorna um objeto convertido do Pandas de um dtype para outro dtype especificado.

convertidos = serie.astype(str)
print(f"Tipo convertido do índice [0]: {type(convertidos[0])}")
print("Série após a conversão para str")
print(convertidos)

convert_dtypes(): dtype

Retorna as colunas convertidas com os melhores tipos possíveis com suporte pd.NA.

convertidos = serie.convert_dtypes()
print(f"Tipos de dados convertidos: {convertidos.dtypes}")
print("Série após a conversão de tipos")
print(convertidos)

infer_objects(): Inferência

Retorna a inferência os melhores tipos de dtypes para colunas de objetos.

inferidos = serie.infer_objects()
print(f"Tipos de dados inferidos: {inferidos.dtypes}")
print("Inferidos os melhores tipos de dtypes")
print(inferidos)

copy(): Cópia

Retorna uma cópia dos índices e dados deste objeto.

print(serie.copy())

to_numpy(): Série convertida para ndarray do Numpy

Retorna um objeto ndarray representando os valores nesta série ou índice.

print(serie.to_numpy())

to_list(): Série convertida em uma lista

Retorna uma lista dos valores.

print(serie.to_list())

2.4 - Indexação, iteração

get() Retorna o item do objeto para a coluna fornecida.
at[] Retorna um único valor para um par de etiquetas de linha / coluna.
iat[] Retorna um único valor para um par de linha / coluna por posição inteira.
loc[] Retorna um grupo de linhas e colunas pelo rótulo (serie) ou uma matriz booleana.
iloc[] Retorna Indexação puramente baseada em localização inteira para seleção por posição.
__iter__() Retorna um iterador dos valores.
items() Retorna um iterador de tuplas contendo o índice e o valor.
keys() Retorna o alias para o índice.
pop(item) Retorna o item e as gotas da série.
item() Retorna o primeiro elemento dos dados subjacentes como um escalar Python.
xs() Retorna a seção transversal do Series / DataFrame.

Criação da série

import pandas as pd

# Criar uma série
data = {'A': 1, 'B': 2, 'C': 3, 'D': 4}
serie = pd.Series(data)

Exemplo do método get:

value = serie.get('B')
print("Método get - Valor de 'B':", value)

get()

Retorna o item do objeto para a coluna fornecida.

print(serie.get('B'))

at[]

Retorna um único valor para um par de etiquetas de linha / coluna.

#print(serie.at('C'))

iat[]

Retorna um único valor para um par de linha / coluna por posição inteira.

print(serie.iat[0])

loc[]

Retorna um grupo de linhas e colunas pelo rótulo (serie) ou uma matriz booleana.

print(serie.loc[['A', 'D']])

iloc[]

Retorna Indexação puramente baseada em localização inteira para seleção por índice.

print(serie.iloc[1:3])

pop()

Retorna o item excluido pelo método pop().

pop = serie.pop('B')
print(pop)
print(f"Série após o pop: {serie}")

Para mais informações sobre .at, .iat, .loc, e .iloc, veja o documentação de indexação.

2.5 - Funções binárias do operador

add() Retorna a adição de séries e outros operadores binários (em termos de elementos add).
sub() Retorna a subtração de séries e outros operadores binários (em termos de elementos sub).
mul() Retorna a multiplicação de séries e outros operadores binários em termos de elemento (mul).
div() Retorna a divisão flutuante de séries e outros operadores binários (em termos de elementos truediv).
truediv() Retorna a divisão flutuante de séries e outros operadores binários (em termos de elementos truediv).
floordiv() Retorna a parte inteira da divisão de séries e outros operadores binários (em termos de elemento floordiv).
mod() Retorna o módulo (resto) de séries e outros operadores binários (em termos de elemento mod).
pow() Retorna a potência exponencial de séries e outros operadores binário em termos de elemento (pow).
radd() Retorna a adição de retorno de séries e outros operadores binários (em termos de elementos radd).
rsub() Retorna a subtração de séries e outros operadores binários (em termos de elementos rsub).
rmul() Retorna a multiplicação de séries e outros operadores binário em termos de elemento (rmul).
rdiv() Retorna a divisão flutuante de séries e outros operadores binários (em termos de elementos rtruediv).
rtruediv() Retorna a divisão flutuante de séries e outros operadores binários (em termos de elementos rtruediv).
rfloordiv() Retorna a parte inteira da divisão de séries e outros operadores binários (em termos de elemento rfloordiv).
rmod() Retorna o módulo de séries e outros operadores binário (em termos de elemento rmod).
rpow() Retorna a potência exponencial de séries e outros operadores binário em termos de elemento (rpow).
combine() Retorna a combinação da série com uma série ou escalar de acordo com a função especificada.
combine_first() Retorna a atualização dos elementos nulos com valor no mesmo local em outra série.
roundDecimais () Retorna os valores arredondados em uma série para o número especificado de casas decimais.
product() Retorna o produto dos valores sobre a série.
dot(outro) Retorna os valores calculados do produto pontilhado entre a série e as colunas de outras.
applymap() Retorna a aplicação de uma função em cada elemento da série, em auto-produção de uma área com a mesma forma de eixo.

Criação das séries

import pandas as pd

# Criar duas séries para demonstração
serie_1 = pd.Series({'A': 1, 'B': 2, 'C': 3})
serie_2 = pd.Series({'A': 4, 'B': 2, 'D': 5})

print(serie_1)
print()
print(serie_2)

add(): Adição

Retorna a adição de séries e outros operadores binários (em termos de elementos add).

print(serie_1.add(serie_2, fill_value=0))

sub(): Subtração

Retorna a subtração de séries e outros operadores binários (em termos de elementos sub).

print(serie_1.sub(serie_2, fill_value=0))

mul(): Multiplicação

Retorna a multiplicação de séries e outros operadores binários em termos de elemento (mul).

print(serie_1.mul(serie_2, fill_value=1))

div(): Divisão

Retorna a divisão flutuante de séries e outros operadores binários (em termos de elementos truediv).

print(serie_1.div(serie_2, fill_value=1))

truediv(): Divisão

Retorna a divisão flutuante de séries e outros operadores binários (em termos de elementos truediv).

print(serie_1.truediv(serie_2, fill_value=1))

floordiv(): Divisão

Retorna a parte inteira da divisão de séries e outros operadores binários (em termos de elemento floordiv).

print(serie_1.floordiv(serie_2, fill_value=1))

mod(): Módulo (ou resto)

Retorna o módulo de séries e outros operadores binários (em termos de elemento mod).

print(serie_1.mod(serie_2, fill_value=0))

pow(): Potência

Retorna a potência exponencial de séries e outros operadores binários em termos de elemento (pow).

print(serie_1.pow(serie_2, fill_value=1))

radd(): Adição reversa

Retorna a adição de séries e outros operadores binários (em termos de elementos radd).

print(serie_1.radd(serie_2, fill_value=0))

rsub(): Subtração reversa

Retorna a subtração de séries e outros operadores binários (em termos de elementos rsub).

print(serie_1.rsub(serie_2, fill_value=0))

rmul(): Multiplicação reversa

Retorna a multiplicação de séries e outros operadores binários em termos de elemento (rmul).

print(serie_1.rmul(serie_2, fill_value=1))

rdiv(): Divisão reversa

Retorna a divisão flutuante de séries e outros operadores binários (em termos de elementos rtruediv).

print(serie_1.rdiv(serie_2, fill_value=1))

rtruediv(): Divisão reversa

Retorna a divisão flutuante de séries e outros operadores binários (em termos de elementos rtruediv).

print(serie_1.rtruediv(serie_2, fill_value=1))

rfloordiv(): Divisão reversa

Retorna a parte inteira da divisão de séries e outros operadores binários (em termos de elemento rfloordiv).

print(serie_1.rfloordiv(serie_2, fill_value=1))

rmod(): Módulo (ou resto) reversa

Retorna o módulo de séries e outros operadores binários (em termos de elemento rmod).

print(serie_1.rmod(serie_2, fill_value=0))

rpow(): Potência reversa

Retorna a potência exponencial de séries e outros operadores binários em termos de elemento (rpow).

print(serie_1.rpow(serie_2, fill_value=1))

combine(): Combinação

Combina a série com uma série ou escalar de acordo com a função lambda.

print(serie_1.combine(serie_2, lambda x, y: x + y))

combine_first(): Combinação

Atualiza elementos nulos com valor no mesmo local em outra série.

print(serie_1.combine_first(serie_2))

roundDecimais(): Arredonda

Arredonda para um número de decimais especificado.

print(serie_1.roundDecimais(2))

product(): Produto

Retorna o produto da multiplicação dos valores da série.

print(serie_1.product())

dot(): Produto pontilhado

Retorna o produto pontilhado entre duas séries.

print(serie_1.dot(serie_2))

applymap(): Aplicação

Retorna a aplicação de uma função em cada elemento da série, em auto-produção de uma área com a mesma forma de eixo.

print(serie_1.applymap(lambda x: x**2))

2.6 - Funções de Comparação

eq() Retorna verdadeiro para todos os elementos da série que são iguais aos elementos de outra ou outro operador binário, em termos de elemento eq.
ne() Retorna verdadeiro para todos os elementos da série que são diferentes que os elementos de outra ou outro operador binário, em termos de elemento ne.
lt() Retorna verdadeiro para todos os elementos da série que são menores que os elementos de outra ou outro operador binário, em termos de elemento lt.
gt() Retorna verdadeiro para todos os elementos da série que são maiores que os elementos de outra ou outro operador binário, em termos de elemento gt.
le() Retorna verdadeiro para todos os elementos da série que são menores ou iguais que os elementos de outra ou outro operador binário, em termos de elemento le.
ge() Retorna verdadeiro para todos os elementos da série que são maiores ou iguais que os elementos de outra ou outro operador binário, em termos de elemento ge.

Usamos as séries serie_1 e serie_2 para demonstração.

print(serie_1)
print(serie_2)

eq(): Igual

Retorna verdadeiro para todos os elementos da série que são iguais aos elementos de outra ou outro operador binário, em termos de elemento eq.

print(serie_1.eq(serie_2, fill_value=0))

ne(): Não igual

Retorna verdadeiro para todos os elementos da série que são diferentes que os elementos de outra ou outro operador binário, em termos de elemento ne.

print(serie_1.ne(serie_2, fill_value=0))

gt(): Maior que

Retorna verdadeiro para todos os elementos da série que são maiores que os elementos de outra ou outro operador binário, em termos de elemento gt.

print(serie_1.gt(serie_2, fill_value=0))

ge(): Maior ou igual

Retorna verdadeiro para todos os elementos da série que são maiores ou iguais que os elementos de outra ou outro operador binário, em termos de elemento ge.

print(serie_1.ge(serie_2, fill_value=0))

lt(): Menor

Retorna verdadeiro para todos os elementos da série que são menores que os elementos de outra ou outro operador binário, em termos de elemento lt.

print(serie_1.lt(serie_2, fill_value=0))

le(): Menor ou igual que

Retorna verdadeiro para todos os elementos da série que são menores ou iguais que os elementos de outra ou outro operador binário, em termos de elemento le.

print(serie_1.le(serie_2, fill_value=0))

2.7 - Aplicação de função, GroupBy e window

apply() Retorna os valores da função aplicada para cada elemento da série.
agg() Retorna a agregação usando uma ou mais operações sobre o eixo especificado.
aggregate() Retorna a agregação usando uma ou mais operações sobre o eixo especificado.
transform() Retorna os valores da função chamada em auto-produção de uma série com a mesma forma de eixo.
map() Retorna a série com os valores de acordo com um mapeamento ou função de entrada.
groupby() Retorna a série de grupos usando um mapeador ou por uma série de colunas.
rolling () Retorna a série dos cálculos das janelas rolantes.
expanding() Retorna a série dos cálculos das janelas em expansão.
ewm() Retorna a série dos cálculos exponencialmente ponderados (EW).
pipe() Retorna os valores de funções classificáveis que esperam objetos dos tipos Series ou DataFrame.

Criação do dataframe

import pandas as pd
import numpy as np

# Criar um DataFrame de exemplo
data = {'Nome': ['Alice', 'Bob', 'Charlie', 'David'],
        'Idade': [25, 30, 35, 40],
        'Salário': [50000, 60000, 75000, 90000]}
df = pd.DataFrame(data)
print(df)

apply(): Aplicação

Retorna os valores da função aplicada para cada elemento da série.

A função dobrar_idade() duplica a idade de todos os registros do DataFrame.

# Método "apply()"
def dobrar_idade(x):
    return x * 2

df['Idade_dobrada'] = df['Idade'].apply(dobrar_idade)
print(df)

map(): Mapeamento

Retorna a série com os valores de acordo com um mapeamento ou função de entrada.

# Método "map()"
def saudacao(nome):
    return f"Olá, {nome}"

df['Saudacao'] = df['Nome'].map(saudacao)
print(df)

agg(): Agregação

Retorna a agregação usando uma ou mais operações sobre o eixo especificado.

Agregação da média da idade e soma do salário.

agregado = df.agg({'Idade': 'mean', 'Salário': 'sum'})
print(agregado)

transform(): Transformação

Retorna os valores da função chamada em auto-produção de uma série com a mesma forma de eixo.

Normalização da Idade por Salário.

def normalizar_idade(x):
    return (x - x.mean()) / x.std()

df['Idade_Normalizada'] = df.groupby('Salário')['Idade'].transform(normalizar_idade)
print(df)

rolling(): Janela Rolante

Retorna a série dos cálculos das janelas rolantes.

Média da Janela Rolante para o salário.

janela_rolante = df['Salário'].rolling(window=2).mean()
print(janela_rolante)

ewm(): Média Ponderada Exponencialmente

Retorna a série dos cálculos exponencialmente ponderados (EW).

Média Ponderada Exponencialmente da Idade.

media_ponderada = df['Idade'].ewm(span=2).mean()
print(media_ponderada)

2.8 - Computações / estatísticas descritivas

abs() Retorna uma série com valor numérico absoluto de cada elemento.
all() Retorna se todos os elementos são Verdadeiros, potencialmente sobre um eixo.
any() Retorna se algum elemento é verdadeiro, potencialmente sobre um eixo.
sum() Retorna a soma dos valores da série.
count() Retorna o número de observações valores não-NA/nulos na série.
autocorr() Retorna os cálculos da autocorrelação lag-N.
corr() Retorna os valores computados na correlação com outra série, excluindo valores ausentes.
between() Retorna a série booleana equivalente à esquerda < = série < = à direita.
clip() Retorna os valores da compensação no limite da série de entrada.
cov() Retorna o valor da covariância sobre a série, excluindo valores ausentes.
cummax() Retorna o máximo acumulado sobre uma série.
cummin() Retorna o mínimo acumulado sobre uma série.
cumprod() Retorna o produto cumulativo sobre uma série.
cumsum() Retorna a soma acumulada sobre uma série.
describe() Retorna as estatísticas descritivas geradas.
diff() Retorna a primeira diferença discreta de elemento.
expanding() Retorna os cálculos de janela de expansão.
factorize() Retorna a codificação do objeto como um tipo enumerado ou variável categórica.
min() Retorna o mínimo dos valores da série.
max() Retorna o máximo dos valores da série.
mean() Retorna a média dos valores da série.
median() Retorna a mediana dos valores da série.
mode() Retorna a moda dos valores da série.
var() Retorna a variação imparcial sobre a série.
std() Retorna o desvio padrão da amostra sobre a série.
kurt() Retorna a curtose imparcial sobre a série.
nlargest() Retorna o maior n elementos.
nsmallest() Retorna o menor n elementos.
pct_change() Retorna a mudança fracionária entre o elemento atual e um elemento anterior.
prod() Retorna o produto dos valores da série.
quantile() Retorna o valor no quantil fornecido.
rank() Retorna os cálculos das classificações de dados numéricos (1 a n) ao longo do eixo.
sem() Retorna o erro padrão imparcial da média sobre a série.
skew() Retorna a inclinação imparcial sobre a série.
kurtosis() Retorna a curtose imparcial sobre a série.
unique() Retorna valores exclusivos do objeto Series.
nunique() Retorna o número de elementos exclusivos no objeto.
is_unique Retorna o booleano se os valores no objeto forem únicos.
is_monotonic_increasing Retorna o booleano se os valores no objeto estiverem aumentando monotonicamente.
is_monotonic_decreasing Retorna o booleano se os valores no objeto estiverem diminuindo monotonicamente.
value_counts() Retorna uma série contendo contagens de valores exclusivos.

Criação da serie

import pandas as pd

# Criar uma série de exemplo
data = [10, 20, 15, 30, 25, 15]
serie = pd.Series(data)

abs(): Valor absoluto

Retorna uma série com valor numérico absoluto de cada elemento.

print(serie.abs())

all(): Todos os elementos são verdadeiros.

Retorna se todos os elementos são verdadeiros.

print(serie.all())

any(): Algum elemento é verdadeiro.

Retorna se pelo menos um elemento é verdadeiro.

print(serie.any())

sum(): Soma

Retorna a soma de todos os elementos.

print(serie.sum())

count(): Contagem

Retorna o número de elementos.

print(serie.count())

autocorr(): Correlação

Retorna os cálculos da autocorrelação lag-N.

print(serie.autocorr())

corr(): Correlação

Retorna os valores computados na correlação com outra série, excluindo valores ausentes.

print(serie.corr(serie))

between(): Intervalo

Retorna a série booleana equivalente à esquerda < = série < = à direita.

print(serie.between(15, 25))

clip(): Intervalo

Retorna os valores da compensação no limite da série de entrada, ou sewja, a série equivalente à esquerda <= serie <= à direita.

print(serie.clip(15, 25))

cov(): Covariação

Retorna o valor da covariância sobre a série, excluindo valores ausentes.

print(serie.cov(serie))

cummax(): Maximo

Retorna o máximo acumulado sobre uma série.

print(serie.cummax())

cummin(): Minimo

Retorna o minimo acumulado sobre uma série.

print(serie.cummin())

cumprod(): Produtorio

Retorna o produtorio acumulado sobre uma série.

print(serie.cumprod())

cumsum(): Soma acumulada

Retorna a soma acumulada sobre uma série.

print(serie.cumsum())

describe(): Estatísticas descritivas

Retorna as estatísticas descritivas.

print(serie.describe())

diff(): Mudança

Retorna a mudança entre os elementos.

print(serie.diff())

expanding(): Expandido

Fornece cálculos de janela de expansão.

print(serie.expanding().sum())

factorize(): Fatorização

Retorna a codificação do objeto como um tipo enumerado ou variável categórica.

print(serie.factorize())

min(): Valor mínimo

print(serie.min())

max(): Valor máximo

print(serie.max())

mean(): Média

Retorna a média dos valores da série, excluindo valores ausentes.

print(serie.mean())

median(): Mediana

print(serie.median())

mode(): Moda

print(serie.mode())

kurt(): Curtose

Retorna a curtose imparcial sobre a série.

print(serie.kurt())

var(): Variação

Retorna a variação dos valores da série, excluindo valores ausentes.

print(serie.var())

std(): Desvio padrão

Retorna o desvio padrão dos valores da série, excluindo valores ausentes.

print(serie.std())

unique(): Valores únicos

print(serie.unique())

nunique(): Número de valores únicos

print(serie.nunique())

is_unique(): São valores únicos

print(serie.is_unique)

is_monotonic_increasing(): Crescimento monotônico

print(serie.is_monotonic_increasing)

2.9 - Reindexação / seleção / manipulação de etiquetas

head() Retorna as primeiras n linhas.
tail() Retorna as últimas n linhas.
where() Retorna os elementos onde a condição é verdadeira.
align() Retorna o alinhamento de duas séries usando o método de junção especificado.
drop() Retorna a série com etiquetas de índice especificadas removidas.
droplevel() Retorna a série com o nível de índice solicitado removido.
duplicated() Retorna os índices das linhas da série com valores duplicados.
drop_duplicates() Retorna a série sem as linhas com valores duplicados.
equals() Retorna verdadeiro se os elementos de duas séries são iguais.
first() Retorna a seleção dos períodos iniciais dos dados das séries temporais com base em um deslocamento de data.
last() Retorna a seleção dos períodos finais dos dados das séries temporais com base em um deslocamento de data.
idxmax() Retorna o rótulo da linha do valor máximo.
idxmin() Retorna o rótulo da linha do valor mínimo.
isin() Retorna se os elementos da série estão contidos em valores.
reindex() Retorna a série conformada para novo índice com lógica de preenchimento opcional.
reindex_like() Retorna um objeto com índices correspondentes como outro objeto.
reset_index() Retorna a série gerada com a redefinição do índice.
rename() Renomeia as etiquetas ou nome do índice da série.
rename_axis() Renomeia o nome da série para o índice.
sample() Retorna uma amostra aleatória de itens de um eixo de objeto.
set_axis() Atribui o índice desejado a uma série.
take() Retorna os elementos no dado posicional índices ao longo de um eixo.
truncate() Retorna uma série truncada antes e depois de algum valor de índice.
mask() Retorna a série com os valores substituidos onde a condição é verdadeira.
add_prefix() Retorna a série com as etiquetas de prefixo.
add_suffix() Retorna a função com as etiquetas de sufixo.
sort_index() Retorna a ordenação do índice da série.
sort_values() Retorna a ordenação dos valores da série.
filter() Retorna a série com as linhas do quadro de dados de acordo com os rótulos de índice especificados.

Criação da série

import pandas as pd

# Criar uma série de exemplo
data = [10, 20, 30, 40, 50]
index = ['A', 'B', 'C', 'D', 'E']
serie = pd.Series(data, index=index)
print(serie)

head(): Primeiras n linhas

Retorna as primeiras n linhas.

print(serie.head(3))

tail(): Últimas n linhas

Retorna as últimas n linhas.

print(serie.tail(2))

where(): Localizar elementos

Retorna os elementos onde a condição é verdadeira.

condicao = serie > 30
print(serie.where(condicao))

Índice: Localizar usando indexação

print(serie[condicao])

align: Alinhar

Retorna o alinhamento de duas séries usando o método de junção especificado.

print(serie.align(serie))

drop(): Remover índice

Retorna a série com etiquetas de índice especificadas removidas.

print(serie.drop('B'))

droplevel(): Remover índice

Retorna a série com o nível de índice solicitado removido.

print(serie.droplevel(0))

duplicated(): Duplicados

Retorna os índices das linhas da série com valores duplicados.

print(serie.duplicated())

drop_duplicates(): Remover linhas duplicadas

Retorna a série com linhas duplicadas removidas.

print(serie.drop_duplicates())

equals(): Séries são iguais

Retorna True se as duas seção forem iguais.

serie_1 = pd.Series([10, 20, 30, 40, 50], index=index)
serie_2 = pd.Series([10, 20, 30, 40, 50], index=index)
serie_3 = pd.Series([10, 20, 40, 50, 60], index=index)
print(serie_1.equals(serie_2))
print(serie_1.equals(serie_3))

first(): Primeiro

Retorna a seleção dos períodos iniciais dos dados das séries temporais com base em um deslocamento de data.

print(serie.first())

last(): último

Retorna a seleção dos índices finais dos dados das séries temporais com base em um deslocamento de data.

print(serie.last())

idxmax(): Máximo

Retorna o rótulo da linha do valor máximo.

print(serie.idxmax())

idxmin(): Mínimo

Retorna o rótulo da linha do valor mínimo.

print(serie.idxmin())

isin(): Conteúdo dos valores

Retorna se os elementos da série estão contidos em valores.

print(serie.isin([10, 40]))

reindex(): Reindexar

Retorna a série conformada para novo índice com lógica de preenchimento opcional.

novo_index = ['X', 'Y', 'Z', 'W', 'V']
print(serie.reindex(novo_index))

reindex_like(): Reindexar

Retorna um objeto com índices correspondentes como outro objeto.

print(serie_1.reindex_like(serie_2))

reset_index(): Indice resetado

Retorna a série gerada com a redefinição do índice.

print(serie.reset_index(drop=True))

rename(): Renomear

Renomeia as etiquetas ou nome do índice da série.

serie.rename("Nova_Serie", inplace=True)
print(serie)

rename_axis(): Renomear

Renomeia o nome do índice da série.

serie.rename_axis("Nova_Serie", inplace=True)
print(serie)

sample(): Amostra

Retorna uma amostra aleatória de itens de um eixo de objeto.

print(serie.sample(3))

set_axis(): Etiquetas

Atribui o índice desejado a uma série.

serie.set_axis(['X', 'Y', 'Z', 'W', 'V'], inplace=True)
print(serie)

take(): Pegar

Retorna uma amostra aleatória de itens de uma série.

print(serie.take([0, 2, 4]))

truncate(): Truncar

Retorna uma série truncada antes e depois de algum valor de índice.

print(serie.truncate(2, 4))

mask(): Máscara

Retorna a série com os valores substituidos onde a condição é verdadeira.

print(serie.mask(serie > 30))

add_prefix(): Etiquetas com adição de prefixo

Adiciona um prefixo a todas as etiquetas da série.

print(serie.add_prefix('_prefix'))

add_suffix(): Etiquetas com adição de sufixo

Adiciona um sufixo a todas as etiquetas da série.

print(serie.add_suffix('_suffix'))

sort_index(): Ordenação do índice

Ordena o índice da série.

print(serie.sort_index())

sort_values(): Ordenação dos valores

Ordena os valores da série.

print(serie.sort_values())

filter(): Filtrar

Retorna a série com as linhas do quadro de dados de acordo com os rótulos de índice especificados.

print(serie.filter(['A', 'C', 'E']))

2.10 - Manuseio de dados ausentes

isna() Retorna verdadeiro se existem valores ausentes.
isnull() Retorna verdadeiro se existem valores ausentes, isnull é um alias para isna.
notna() Retorna verdadeiro se todos os valores são existentes (não ausentes).
notnull() Retorna verdadeiro se todos os valores são existentes, notnull é um alias para notna.
bfill() Retorna uma nova série com os valores ausentes preenchidos com a último observação válida para preencher a lacuna.
ffill() Retorna a série com os valores de NA/NaN propagando a última observação válida para a próxima.
fillna() Retorna uma nova série com os valores de NA/NaN usando o método especificado.
dropna() Retorna uma nova série com os valores ausentes removidos.
interpolate() Retorna uma nova série com os valores de NaN usando um método de interpolação.
replace() Retorna a série com valores fornecidos para substituição.

Criação da série

Atribuímos na variável serie a instância de uma série da classe pd.Series com valores ausentes (NaN).

import pandas as pd
import numpy as np

# Criar uma série com valores ausentes (NaN)
data = [1, 2, np.nan, 4, np.nan, 6]
serie = pd.Series(data)

print(serie)

isna(): Valores ausentes

Retorna verdadeiro se existem valores ausentes.

print(serie.isna()

isnull(): Valores ausentes

Retorna verdadeiro se existem valores ausentes, isnull é um alias para isna.

print(serie.isnull())

notna(): Valores existentes

Retorna verdadeiro se todos os valores são existentes (não ausentes).

print(serie.notna())

notnull(): Valores existentes

Retorna verdadeiro se todos os valores são existentes, notnull é um alias para notna.

print(serie.notnull())

bfill(): Preencher valores ausentes com bfill

Preencher os valores ausentes com a último observação válida (backward fill).

print("Valores ausentes preenchidos com a próxima observação válida (backward fill)")
print(serie.bfill())

ffill(): Preencher valores ausentes com ffill

Preencher os valores ausentes com a última observação válida (forward fill).

print(serie.ffill())

fillna(): Preencher valores ausentes

Preencher os valores ausentes com o método especificado.

print(serie.fillna(0))

dropna(): Remover valores ausentes

Remover os valores ausentes.

print(serie.dropna())

interpolate(): Preencher valores ausentes com interpolação linear

Preencher os valores ausentes com o método de interpolação linear.

s_interp = serie.interpolate()
print(s_interp)

replace(): Substituir valores ausentes com replace

Substituir os valores ausentes com o método especificado.

print()"Valores NaN substituídos por 99")
print(serie.replace(np.nan, 99))

2.11 - Remodelando, classificando

sort_index() Retorna a série classificada em ordem pelos rótulos de índice.
sort_values() Retorna uma nova<|end_context|>Classifique pelos valores.
argsort() Retorna os índices inteiros que classificariam os valores da série.
argmin() Retorna a posição int do menor valor da série.
argmax() Retorna a posição int do maior valor da série.
swaplevel() Troque os níveis i e j em um MultiIndex.
unstack() Unstack, também conhecido como pivot, Série com MultiIndex para produzir DataFrame.
explode() Transforme cada elemento de uma lista como uma linha.
searchsorted() Encontre índices em que elementos devem ser inseridos para manter a ordem.
ravelPedido () Retorna os dados subjacentes achatados como um ndarray ou ExtensionArray.
repeat() Repita os elementos de uma série.
squeeze() Aperte objetos de eixo dimensional em escalares.
view() Crie uma nova visão da série.
reorder_levels() Reorganize os níveis de índice usando a ordem de entrada.

Criação da série

import pandas as pd
serie = pd.Series([7, 2, 9, 4, 1], index=['A', 'B', 'C', 'D', 'E'])
print(serie)

sort_index(): Classificar por ordem de rótulos

Retorna a série classificada em ordem pelos rótulos de índice.

print(serie.sort_index())

sort_index(ascending=False): Série classificada por rótulos de índice descendentes

print(serie.sort_index(ascending=False))

sort_index(level=1): Classifique por ordem de rótulos do primeiro nível

print(serie.sort_index(level=1))

sort_values(): Série classificada por valores

print(serie.sort_values())

sort_values(ascending=False): Série classificada por valores descendentes

print(serie.sort_values(ascending=False))

sort_values(level=1, ascending=False): Classifique por valores descendentes do primeiro nível

print(serie.sort_index(level=1, ascending=False))

sort_values(level=1, ascending=False, sort_remaining=False): Classifique por valores descendentes do primeiro nível

print(serie.sort_index(level=1, ascending=False, sort_remaining=False))

sort_values(level=1, ascending=False, sort_remaining=False, na_position='first'): Classifique por valores descendentes do primeiro nível

print(serie.sort_index(level=1, ascending=False, sort_remaining=False, na_position='first'))

sort_values(level=1, ascending=False, sort_remaining=False, na_position='last'): Classifique por valores descendentes do primeiro nível

print(serie.sort_index(level=1, ascending=False, sort_remaining=False, na_position='last'))

argsort(): Indices inteiros

Retorna os índices inteiros que classificariam os valores da série.

print(serie.argsort())

argmin(): Indice do menor valor

Retorna a posição int do menor valor da série.

print(serie.argmin())

argmax(): Indice do maior valor

Retorna a posição int do maior valor da série.

print(serie.argmax())

swaplevel(): Trocar os níveis i e j em um MultiIndex

Troque os níveis i e j em um MultiIndex.

print(serie.swaplevel())

unstack(): Unstack, então conhecido como pivot, Série com MultiIndex para produzir DataFrame

Unstack,/Dk. Método de agrupamento, Série com MultiIndex para produzir DataFrame.

print(serie.unstack())

unstack(level=1): Unstack,/Dk. Método de agrupamento, Série com MultiIndex para produzir DataFrame

Unstack,/Dk. Método de agrupamento, Série com MultiIndex para produzir DataFrame.

print(serie.unstack(level=1))

unstack(level=1, fill_value=0): Unstack,/Dk. Método de agrupamento, Série com MultiIndex para produzir DataFrame

Unstack,/Dk. Método de agrupamento, Série com MultiIndex para produzir DataFrame.

print(serie.unstack(level=1, fill_value=0))

unstack(level=1, fill_value=0, dropna=True): Unstack,/Dk. Método de agrupamento, Série com MultiIndex para produzir DataFrame

Unstack,/Dk. Método de agrupamento, Série com MultiIndex para produzir DataFrame.

print(serie.unstack(level=1, fill_value=0, dropna=True))

explode(): Transforme cada elemento de uma lista como uma linha

Transforme cada elemento de uma lista como uma linha.

print(serie.explode())

searchsorted(): Posição de um valor em uma série

Posição de um valor em uma série.

print(serie.searchsorted(0))

searchsorted(v, side='left'): Posição de um valor em uma série

Posição de um valor em uma série.

print(serie.searchsorted(0, side='left'))

searchsorted(v, side='right'): Posição de um valor em uma série

Posição de um valor em uma série.

print(serie.searchsorted(0, side='right'))

2.12 - Combinando / comparando / juntando / mesclando

compare() Retorna a série com os valores comparados com outra série mostrando as diferenças.
update() Modifica a série nas posições usando valores da série passada.

Criação das séries

import pandas as pd

# Criar duas séries
serie_1 = pd.Series([1, 2, 3, 4], index=['A', 'B', 'C', 'D'])
serie_2 = pd.Series([2, 2, 5, 6], index=['A', 'B', 'C', 'D'])
serie_3 = pd.Series([2, 2, 5, 6], index=['A', 'B', 'C', 'E'])

Imprimimos as séries.

print("Série 1:")
print()
print(serie_1)
print()
print("Série 2:")
print()
print(serie_2)
print()
print("Série 3:")
print()
print(serie_3)

compare(): Compare com outra série e mostre as diferenças.

Retorna a série com os valores comparados com outra série mostrando as diferenças.

print(serie_1.compare(serie_2))

update(): Modifique a série no lugar usando valores da série passada.

Modifica a série nas posições usando valores da série passada.

serie_1.update(serie_3)
print(serie_1)

2.13 - Séries temporais

asfreq() Retorna a conversão de séries temporais em frequência especificada.
asof() Retorna a última linha da série sem nenhum NaN antes.
shift() Retorna o índice de deslocamento pelo número desejado de períodos com um tempo opcional freq.
first_valid_index() Retorna o índice de retorno para o primeiro valor não-NA ou Nenhum, se nenhum valor não-NA for encontrado.
last_valid_index() Retorna o índice de retorno para o último valor não-NA ou Nenhum, se nenhum valor não-NA for encontrado.
resample() Retorna a série com uma nova amostragem, agrupando os dados por uma frequência especificada.
tz_convert() Converta o eixo tz-aware para o fuso horário alvo.
tz_localize() Localize o índice tz-naive de uma série ou dataframe para segmentar o fuso horário.
at_time() Retorna a seleção de valores na hora específica do dia (por exemplo, 9:30).
between_time() Retorna a selecão de valores entre horários específicos do dia (por exemplo, 9: 00-9: 30 AM).

Exemplo:

import pandas as pd
import numpy as np

# Criar uma série temporal
date_rng = pd.date_range(start='2023-01-01', end='2023-01-05', freq='D')
ts = pd.Series(np.random.randn(len(date_rng)), index=date_rng)

Imprimimos a série.

print(ts)
print(f"date_range: {date_rng}")

asfreq(): Frequência horária

Retorna a conversão de séries temporais em frequência horária especificada.

ts_asfreq = ts.asfreq(freq='H', method='pad')
print(ts_asfreq)

asof(): Retorna a linha da série sem nenhum NaN antes.

Retorna a última linha da série sem nenhum NaN antes.

ts_asof = ts.asof('2023-01-02')
print(ts_asof)

shift(): Série Temporal com deslocamento de 2 dias.

Retorna o índice de deslocamento pelo número desejado de períodos com um tempo opcional freq.

ts_shifted = ts.shift(periods=2, freq='D')
print(ts_shifted)

first_valid_index(): Índice de retorno para o primeiro valor não-NA ou Nenhum, se nenhum valor não-NA for encontrado.

Retorna o índice de retorno para o primeiro valor não-NA ou Nenhum, se nenhum valor não-NA for encontrado.

ts_first_valid_index = ts.first_valid_index()
print(ts_first_valid_index)

last_valid_index(): Índice de retorno para o último valor não-NA ou Nenhum, se nenhum valor não-NA for encontrado.

Retorna o índice de retorno para o último valor não-NA ou Nenhum, se nenhum valor não-NA for encontrado.

ts_last_valid_index = ts.last_valid_index()
print(ts_last_valid_index)

resample(): Reamostragem.

Retorna a série com uma nova amostragem, agrupando os dados por uma frequência especificada.

ts_resampled = ts.resample('D').mean()
print(ts_resampled)

at_time(): Hora especificada.

Retorna a seleção de valores na hora específica do dia (por exemplo, 9:30).

ts_at_time = ts.at_time('09:00')
print(ts_at_time)

between_time(): Horários especificados.

Retorna a selecão de valores entre horários específicos do dia (por exemplo, 9: 00-9: 30 AM).

entre_horarios = ts.between_time('09:00', '12:00')
print(entre_horarios)
tz_convert(): Converta o eixo tz-aware para o fuso horário alvo.

Retorna a conversão de séries temporais em frequência horária especificada.

ts_tz_convert = ts.tz_convert('US/Eastern')
print(ts_tz_convert)

tz_localize(): Localize o índice tz-naive de uma série ou dataframe para segmentar o fuso horário.

Retorna a conversão de séries temporais em frequência horária especificada.

ts_tz_localize = ts.tz_localize('US/Eastern')
print(ts_tz_localize)

2.14 - Acessadores

Os pandas fornecem métodos específicos para o dtype sob vários acessadores. Estes são espaços de nomes separados dentro Series que apenas se aplica para tipos de dados específicos.

Tipo de dados Acessor
Data e hora, período dt
Texto str
Categórico cat
Esparso esparsa

2.14.1 - Propriedades semelhantes a data e hora

Series.dt pode ser usado para acessar os valores da série como datetimelike e retorne várias propriedades. Estes podem ser acessados como Series.dt..

2.14.1.1 - Propriedades em tempos de data e hora

dt.date Retorna uma matriz numpia de python datetime.date objetos.
dt.time Retorna uma matriz numpia de datetime.time objetos.
dt.timetz Retorna uma matriz numpia de datetime.time objetos com fusos horários.
dt.year O ano do tempo de data.
dt.month O mês de janeiro = 1, dezembro = 12.
dt.day O dia do tempo de data.
dt.hour As horas do tempo de data.
dt.minute Os minutos do tempo de data.
dt.second Os segundos do tempo de data.
dt.microsecond Os microssegundos do data e hora.
dt.nanosecond Os nanossegundos do data e hora.
dt.dayofweek dia da semana com segunda-feira = 0, domingo = 6.
dt.day_of_weekday O dia da semana com segunda-feira = 0, domingo = 6.O dia da semana com segunda-feira = 0, domingo = 6.
dt.weekday_of_year O dia da semana com segunda-feira = 0, domingo = 6.
dt.dayofyear O dia ordinal do ano.
dt.day_of_year O dia ordinal do ano.
dt.days_in_month O número de dias no mês.
dt.quarter O quarto da data.O quarto da data.
dt.is_month_start Indica se a data é o primeiro dia do mês.
dt.is_month_end Indica se a data é o último dia do mês.
dt.is_quarter_start Indicador para saber se a data é o primeiro dia do trimestre.
dt.is_quarter_end Indicador para saber se a data é o último dia de um quarto.
dt.is_year_start Indique se a data é o primeiro dia de um ano.
dt.is_year_end Indique se a data é o último dia do ano.
dt.is_leap_year Indicador booleano se a data pertencer a um ano bissexto.
dt.daysinmonth O número de dias no mês.
dt.days_in_month O número de dias no mês.
dt.tz Retorna o fuso horário.
dt.freq Retorna o objeto de frequência para este PeriodArray.
dt.unit Retorna a unidade.
dt.normalize() Converta os horários para meia-noite.

2.14.1.2 - Métodos de data e hora

dt.isocalendar() Calcule ano, semana e dia de acordo com a norma ISO 8601.
dt.to_period() Elenco para PeriodArray / PeriodIndex em uma frequência específica.
dt.to_pydatetime() (DEPRECADO) Retorna os dados como uma matriz de datetime.datetime objetos.
dt.tz_localize() Localize tz-naive Datetime Array / Index para tz-ware Datetime Array / Index.
dt.tz_convert() Converta o Datetime Array / Index com reconhecimento de tz de um fuso horário para outro.
dt.normalize() Converta os horários para meia-noite.
dt.strftime() Converta em Índice usando date_format especificado.
dt.round() Realize uma operação redonda nos dados até o especificado freq.
dt.floor() Execute a operação do piso nos dados até o especificado freq.
dt.ceil() Execute a operação do ceil nos dados para o especificado freq.
dt.month_name() Retorna os nomes dos meses com o código do idioma especificado.
dt.day_name() Retorna os nomes dos dias com o local especificado.
dt.as_unit() Retorna a unidade.

2.14.1.3 - Propriedades do período

dt.qyear O ano do tempo de data.
dt.start_time Obtenha o registro de data e hora para o início do período.
dt.end_time Obtenha o registro de data e hora para o final do período.

2.14.1.4 - Propriedades do Timedelta

dt.days Número de dias para cada elemento.
dt.seconds Número de segundos (>= 0 e menos de 1 dia) para cada elemento.
dt.microseconds Número de microssegundos (>= 0 e menos de 1 segundo) para cada elemento.
dt.nanoseconds Número de nanossegundos (>= 0 e menos de 1 microssegundo) para cada elemento.
dt.components Retorna um quadro de dados dos componentes dos Timedeltas.
dt.unit Retorna a unidade.

2.14.1.5 - Métodos Timedelta

dt.to_pytimedelta() Retornar uma matriz de nativo datetime.timedelta objetos.
dt.total_seconds() Retorna a duração total de cada elemento, expressa em segundos.
dt.as_unit()

2.14.2 - Manuseio de textos

str pode ser usado para acessar os valores da série como strings e aplique vários métodos a ele. Estes podem ser acessados como str..
str.capitalize() Converta as strings na série / índice para serem capitalizadas.
str.casefold() Converta as strings na série / índice para serem dobradas em caixa.
str.cat() Concatenar cadeias na série / índice com o separador fornecido.
str.center() Almofada do lado esquerdo e direito das textos na série / índice.
str.contains() Teste se o padrão ou regex estiver contido em uma sequência de uma série ou índice.
str.count() Conte as ocorrências de padrão em cada sequência da série / índice.
str.decode() Decodifique a sequência de caracteres na série / índice usando a codificação indicada.
str.encode() Codifique a sequência de caracteres na série / índice usando a codificação indicada.
str.endswith() Teste se o final de cada elemento da sequência corresponder a um padrão.
str.extract() Extrair grupos de captura no regex pat como colunas em um DataFrame.
str.extractall() Extrair grupos de captura no regex pat como colunas no DataFrame.
str.find() Retorna os índices mais baixos em cada sequência da série / índice.
str.findall() Encontre todas as ocorrências de padrão ou expressão regular na série / índice.
str.fullmatch() Determine se cada sequência corresponde inteiramente a uma expressão regular.
str.get(i) Extraia o elemento de cada componente na posição especificada ou com a chave especificada.
str.index() Retorna os índices mais baixos em cada sequência em Série / Índice.
str.join(sep) Associe as listas contidas como elementos na série / índice com o delimitador passado.
str.len() Calcule o comprimento de cada elemento na série / índice.
str.ljust() Almofada do lado direito das textos na série / índice.
str.lower() Converta as strings na série / índice para minúsculas.
str.lstrip() Remova os personagens principais.
str.match() Determine se cada sequência começa com uma correspondência de uma expressão regular.
str.normalize() Retorna a forma normal Unicode para as strings na série / índice.
str.pad() Prenda as textos na série / índice até a largura.
str.partition() Divida a sequência na primeira ocorrência de sep.
str.removeprefixPrefixo() Remova um prefixo de uma série de objetos.
str.removesuffix() Remova um sufixo de uma série de objetos.
str.repeat() Duplique cada sequência na série ou índice.
str.replace() Substitua cada ocorrência de padrão / regex na série / índice.
str.rfind() Retorna os índices mais altos em cada sequência da série / índice.
str.rindex() Retorna os índices mais altos em cada sequência em Série / Índice.
str.rjust() Almofada do lado esquerdo das textos na série / índice.
str.rpartition() Divida a sequência na última ocorrência de sep.
str.rstrip() Remova os caracteres finais.
str.slice() Corte substrings de cada elemento da série ou índice.
str.slice_replace() Substitua uma fatia posicional de uma sequência por outro valor.
str.split() Divida as textos em torno de um separador / delimitador.
str.rsplit() Divida as textos em torno de um separador / delimitador.
str.startswith() Teste se o início de cada elemento da sequência corresponder a um padrão.
str.strip() Remova os caracteres principais e finais.
str.swapcase() Converta as strings na série / índice para serem trocadas.
str.title() Converta strings na série / índice para a caixa de título.
str.translateTabela() Mapeie todos os caracteres na sequência através da tabela de mapeamento fornecida.
str.upper() Converta as strings na série / índice para maiúsculas.
str.wrap() Enrole as strings em Série / Índice na largura especificada da linha.
str.zfill() Prepare as strings na série / índice preparando os caracteres '0.
str.isalnum() Verifique se todos os caracteres em cada sequência são alfanuméricos.
str.isalpha() Verifique se todos os caracteres em cada sequência são alfabéticos.
str.isdigit() Verifique se todos os caracteres em cada sequência são dígitos.
str.isspace() Verifique se todos os caracteres em cada sequência são espaços em branco.
str.islower() Verifique se todos os caracteres em cada sequência são minúsculos.
str.isupper() Verifique se todos os caracteres em cada sequência são maiúsculas.
str.istitle() Verifique se todos os caracteres em cada sequência são maiúsculas.
str.isnumeric() Verifique se todos os caracteres em cada sequência são numéricos.
str.isdecimal() Verifique se todos os caracteres em cada sequência são decimais.
str.get_dummies() Retorna o DataFrame de variáveis fictícias / indicadoras para séries.

2.14.3 - Acessor categórico

Métodos e atributos específicos do tipo categórico estão disponíveis em o $trd cat acessador cat.[função]

As categorias deste categórico.

cat.ordered Se as categorias têm um relacionamento ordenado.
cat.codes Retornar séries de códigos, bem como o índice.
cat.rename_categories() Renomeie categorias.
cat.reorder_categories() Reordenar categorias conforme especificado em new_categories.
cat.add_categories() Adicione novas categorias.
cat.remove_categories() Remova as categorias especificadas.
cat.remove_unused_categories(*args,...) Remova as categorias que não são usadas.
cat.set_categories() Defina as categorias para as novas categorias especificadas.
cat.as_ordered() Defina o categórico a ser solicitado.
cat.as_unordered() Defina o categórico como não ordenado.

2.14.4 - Acessor esparso

Métodos e atributos específicos de tipo esparso são fornecidos sob acessador sparse .

sparse.npoints O número de não-pontos.
sparse.density A porcentagem de não-pontos, como decimal.
sparse.fill_value Elementos em dados que são valor de preenchimento não estão armazenados.
sparse.sp_values Um ndarray contendo os não-valores.
sparse.from_coo() Crie uma série com valores esparsos a partir de um scipy.sparse.coo_matrix.
sparse.to_coo() Crie um scipy.sparse.coo_matrix a partir de uma série com o MultiIndex.

2.14.5 - Acessor de Plotagem

O atributo plot é um método exigível e um atributo namespace para métodos específicos de plotagem da forma plot.[função].

plot() Acessor e método de plotagem em série
plot.area() Desenhe um terreno de área empilhada.
plot.bar() Lote de barra vertical.
plot.barh() Faça um gráfico de barras horizontal.
plot.box() Faça um gráfico de caixa das colunas DataFrame.
plot.density() Gere o gráfico de estimativa de densidade do kernel usando kernels gaussianos.
plot.hist() Desenhe um histograma das colunas do DataFrame.
plot.kde() Gere o gráfico de estimativa de densidade do kernel usando kernels gaussianos.
plot.line() Plot Series ou DataFrame como linhas.
plot.pie() Gere um enredo de torta.
hist() Desenhe o histograma da série de entradas usando matplotlib.

Exemplos:

Importamos as bibliotecas:

import pandas as pd
import matplotlib.pyplot as plt

Criamos uma série de exemplo:

data = {
  'Categoria' : ['A', 'B', 'C', 'D', 'E'],
  'Valores'   : [10, 25, 15, 30, 20]
}

serie = pd.Series(data['Valores'], index=data['Categoria'])

Gráfico de linha:

serie.plot.line(marker='o', linestyle='-', color='b', markersize=8)
plt.title('Gráfico de Linha')
plt.xlabel('Categoria')
plt.ylabel('Valores')
plt.show()

Gráfico de barras:

serie.plot.bar(color='g')
plt.title('Gráfico de Barras')
plt.xlabel('Categoria')
plt.ylabel('Valores')
plt.show()

Gráfico de pizza:

serie.plot.pie(autopct='%1.1f%%', startangle=90)
plt.title('Gráfico de Pizza')
plt.axis('equal')  # Mantém o aspecto igual para um círculo
plt.show()

Histograma:

serie.hist(bins=5, color='r', edgecolor='k')
plt.title('Histograma')
plt.xlabel('Valores')
plt.ylabel('Frequência')
plt.show()

Criando uma série de exemplo:

df = pd.DataFrame({
  'Série 1': [1, 2, 3, 4, 5],
  'Série 2': [5, 4, 3, 2, 1]
})

Gráfico de linha empilhada:

df.plot.area()
plt.title('Gráfico de Linha Empilhada')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()

Gráfico de área empilhada:

df.plot.area(stacked=True)
plt.title('Gráfico de Área Empilhada')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()
# Gráfico de caixa
df = pd.DataFrame({
  'Série 1': [1, 2, 3, 4, 5],
  'Série 2': [5, 4, 3, 2, 1]
})
df.plot.box()
plt.title('Gráfico de Caixa')
plt.ylabel('Valores')
plt.show()

Gráfico de estimativa de densidade do kernel (KDE):

data = {'Categoria': ['A', 'B', 'C', 'D', 'E'],
        'Valores': [10, 25, 15, 30, 20]}
serie = pd.Series(data['Valores'], index=data['Categoria'])
serie.plot.kde()
plt.title('Gráfico de Estimativa de Densidade do Kernel')
plt.xlabel('Valores')
plt.ylabel('Densidade')
plt.show()

Gráfico de barras vertical:

serie.plot.bar(color='orange')
plt.title('Gráfico de Barras Verticais')
plt.xlabel('Valores')
plt.ylabel('Categoria')
plt.show()

Criando uma série de exemplo:

data = {'Categoria': ['A', 'B', 'C', 'D', 'E'],
        'Valores': [10, 25, 15, 30, 20]}
serie = pd.Series(data['Valores'], index=data['Categoria'])

Gráfico de linha:

serie.plot.line(marker='o', linestyle='--', color='b')
plt.title('Gráfico de Linha')
plt.xlabel('Categoria')
plt.ylabel('Valores')
plt.show()

Gráfico de pizza:

serie.plot.pie(autopct='%1.1f%%', startangle=90, colors=['r', 'g', 'b', 'y', 'c'])
plt.title('Gráfico de Pizza')
plt.ylabel('')
plt.show()

2.15 - Histograma

data = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5]
serie = pd.Series(data)
serie.plot.hist(bins=5, color='purple', edgecolor='black')
plt.title('Histograma')
plt.xlabel('Valores')
plt.ylabel('Contagem')
plt.show()

Gráfico de barras horizontais:

serie.plot.barh(color='orange')
plt.title('Gráfico de Barras Horizontais')
plt.xlabel('Valores')
plt.ylabel('Categoria')
plt.show()
import pandas as pd
import matplotlib.pyplot as plt

# Criando uma série de exemplo
data = {'Categoria': ['A', 'B', 'C', 'D', 'E'],
        'Valores': [10, 25, 15, 30, 20]}
serie = pd.Series(data['Valores'], index=data['Categoria'])

Gráfico de área empilhada

df = pd.DataFrame({'A': [1, 2, 3, 4, 5], 'B': [5, 4, 3, 2, 1]})
df.plot.area(stacked=True, alpha=0.5)
plt.title('Gráfico de Área Empilhada')
plt.xlabel('Eixo X')
plt.ylabel('Eixo Y')
plt.show()

Gráfico de barras verticais

serie.plot.bar()
plt.title('Gráfico de Barras Verticais')
plt.xlabel('Categoria')
plt.ylabel('Valores')
plt.show()

Gráfico de barras horizontais

serie.plot.barh()
plt.title('Gráfico de Barras Horizontais')
plt.xlabel('Valores')
plt.ylabel('Categoria')
plt.show()

Gráfico de caixa

data = pd.DataFrame({'Coluna 1': [10, 20, 30, 40, 50], 'Coluna 2': [5, 15, 25, 35, 45]})
data.plot.box()
plt.title('Gráfico de Caixa')
plt.ylabel('Valores')
plt.show()

2.16 - Serialização / IO / conversão

to_pickle() Pickle (serialize) objeto para arquivar.
to_csv() Escreva o objeto em um arquivo de valores separados por vírgula (csv).
to_dict() Converta o valor da série em { label - > } dict ou dict-like object.
to_excel() Escreva o objeto em uma folha do Excel.
to_frame() Converta séries em DataFrame.
to_xarray() Retorna um objeto de raio-x do objeto pandas.
to_hdf() Escreva os dados contidos em um arquivo HDF5 usando o HDFStore.
to_sql() Escreva registros armazenados em um DataFrame em um banco de dados SQL.
to_json() Converta o objeto em uma sequência JSON.
to_string() Renderize uma representação de string da série.
to_clipboard() Copie o objeto para a área de transferência do sistema.
to_latex() Objeto de renderização em uma tabela tabular, longtable ou aninhada do LaTeX.
to_markdown() Série de impressão em formato compatível com Markdown.

2.17 - Indicadores

Indicadores referem-se a atributos do objeto pandas. Propriedades do conjunto de dados (semelhantes a data é gravada, o URL do qual foi acessado etc.) deve ser armazenado em attrs.

Flags(obj, *, allow_duplicate_labels) Bandeiras que se aplicam a objetos de pandas.

2.18 - Metadados

O atributo attrs é um dicionário para armazenar metadados globais para esta série.

Aviso: attrs é considerado experimental e pode mudar sem aviso prévio.

Dicionário de atributos globais deste conjunto de dados.

Arduino
Coautor
Betobyte
Autor
Autores
||| Áreas ||| Estatística ||| Python ||| Projetos ||| Dicas & Truques ||| Quantum ||| Pandas || Python para Iniciantes || Python Básico || Matplotlib || Numpy || Seaborn || Pandas || Django || Estatística para Cientistas de Dados || Python com ML Básico || Python com ML Básico || Aulas | Introdução (introdução) | Series (Series) | Dataframes (Dataframes) | Limpeza (limpeza) | Correlações (correlações) | Plotagem Pandas (plotagem pandas) | Seleções Pandas (Seleções pandas) | Pandas x SQL (Pandas x SQL) |