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