Как суммировать строки DataFrame для определенных столбцов в Pandas
Для данного DataFrame может потребоваться вычислить сумму значений по всем конкретные строки. При попытке добиться этого с помощью df[['a', 'b', 'd']].map(sum) вы можете столкнуться с проблемами.
Подходящая операция для этой задачи включает использование sum() с осью = 1. Эта операция вычисляет сумму каждой строки, игнорируя нечисловые столбцы. Чтобы обеспечить точность, рекомендуется указать numeric_only=True, особенно в Pandas версии 2.0 и выше.
Например, рассмотрим DataFrame со столбцами «a», «b», «c» и «d». , где 'c' — нечисловой столбец:
df = pd.DataFrame({'a': [1, 2, 3], 'b': [2, 3, 4], 'c': ['dd', 'ee', 'ff'], 'd': [5, 9, 1]})
Чтобы вычислив сумму столбцов «a», «b» и «d», мы можем использовать:
df['e'] = df.sum(axis=1, numeric_only=True)
Это добавит столбец «e», содержащий сумму нужных столбцов.
Если вы хотите суммировать определенные столбцы, исключая другие, вы можете указать список столбцов и удалите все ненужные, используя col_list.remove(column_name).
col_list = list(df) col_list.remove('d') df['e'] = df[col_list].sum(axis=1)
Это создаст новый столбец 'e' с суммой указанных столбцов.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3