Como somar linhas do DataFrame para colunas específicas no Pandas
Para um determinado DataFrame, pode ser necessário calcular a soma dos valores em linhas específicas. Ao tentar fazer isso por meio de df[['a', 'b', 'd']].map(sum), você pode encontrar problemas.
A operação apropriada para esta tarefa envolve o uso de sum() com eixo=1. Esta operação calcula a soma de cada linha, ignorando colunas não numéricas. Para garantir a precisão, é recomendado especificar numeric_only=True, especialmente nas versões 2.0 e superiores do Pandas.
Por exemplo, considere um DataFrame com colunas 'a', 'b', 'c' e 'd' , onde 'c' é uma coluna não numérica:
df = pd.DataFrame({'a': [1, 2, 3], 'b': [2, 3, 4], 'c': ['dd', 'ee', 'ff'], 'd': [5, 9, 1]})
Para calcular a soma de colunas 'a', 'b' e 'd', podemos usar:
df['e'] = df.sum(axis=1, numeric_only=True)
Este vai adicione uma coluna 'e' contendo a soma das colunas desejadas.
Se desejar somar colunas específicas enquanto exclui outras, você pode especificar uma lista de colunas e remover aquelas indesejadas usando col_list.remove(column_name) .
col_list = list(df) col_list.remove('d') df['e'] = df[col_list].sum(axis=1)
Isso criará uma nova coluna 'e' com a soma das colunas especificadas.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3