Como adicionar linhas específicas em pandas (com exemplos)


Você pode usar os seguintes métodos para encontrar a soma de linhas específicas em um DataFrame do pandas:

Método 1: adicionar linhas específicas por índice

 #sum rows in index positions 0, 1, and 4
df. iloc [[0, 1, 4]]. sum ()

Método 2: adicionar linhas específicas por rótulo

 #sum rows with index labels 'A', 'B', and 'E'
df. loc [['A', 'B', 'E']]. sum () 

Os exemplos a seguir mostram como usar cada método na prática com o seguinte DataFrame do pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [28, 17, 19, 14, 23, 26, 5],
                   ' rebounds ': [5, 6, 4, 7, 14, 12, 9],
                   ' assists ': [10, 13, 7, 8, 4, 5, 8]})

#set indexes
df = df. set_index ([pd. Index (['A', 'B', 'C', 'D', 'E', 'F', 'G'])])

#view DataFrame
print (df)

   points rebound assists
A 28 5 10
B 17 6 13
C 19 4 7
D 14 7 8
E 23 14 4
F 26 12 5
G 5 9 8

Exemplo 1: Soma de linhas específicas por índice

O código a seguir mostra como adicionar os valores das linhas com valores de índice 0, 1 e 4 para cada coluna do DataFrame:

 #sum rows in index positions 0, 1, and 4
df. iloc [[0, 1, 4]]. sum ()

points 68
rebounds 25
assists 27
dtype: int64

Pelo resultado podemos ver:

  • A soma das linhas com valores de índice 0, 1 e 4 para a coluna de pontos é 68 .
  • A soma das linhas com valores de índice 0, 1 e 4 para a coluna de rejeições é 25 .
  • A soma das linhas com valores de índice 0, 1 e 4 para a coluna de assistências é 27 .

Observe também que você pode somar um intervalo específico de linhas usando a seguinte sintaxe:

 #sum rows in index positions between 0 and 4
df. iloc [0:4]. sum ()

points 78
rebounds 22
assists 38
dtype: int64

Na saída, podemos ver a soma das linhas com valores de índice entre 0 e 4 (sem contar 4) para cada uma das colunas do DataFrame.

Exemplo 2: Adicionar linhas específicas por rótulo

O código a seguir mostra como somar os valores das linhas com rótulos de índice “A”, “B” e “E” para cada coluna no DataFrame:

 #sum rows with index labels 'A', 'B', and 'E'
df. loc [['A', 'B', 'E']]. sum ()

points 68
rebounds 25
assists 27
dtype: int64

Pelo resultado podemos ver:

  • A soma das linhas com valores de índice ‘A’, ‘B’ e ‘E’ para a coluna de pontos é 68 .
  • A soma das linhas com valores de índice ‘A’, ‘B’ e ‘E’ para a coluna bounces é 25 .
  • A soma das linhas com valores de índice ‘A’, ‘B’ e ‘E’ para a coluna de assistências é 27 .

Relacionado: A diferença entre loc e iloc no Pandas

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras operações comuns em pandas:

Como executar uma função SUMIF no Pandas
Como realizar uma soma GroupBy no Pandas
Como somar colunas com base em uma condição no Pandas

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *