P.S в counter 2 значения хранятся, а при записи в объект data почему-то теряется 1 из них.
import pandas as pd from collections import OrderedDict from decimal import Decimal compare_columns = ['Счет дебет', 'Счет получателя'] data = pd.read_excel('files/translations-408-2.xlsx', sheetname=0) data = data[data.duplicated(compare_columns, keep=False)].copy(deep=True) counter = OrderedDict() sum_i, col_unique_i = [ i for i, col in enumerate(data.keys()) if col in ('Счет получателя', 'Сумма') ] for i in data.values: num_card, sum_ = i[col_unique_i], i[sum_i] counter[num_card] = counter.get(num_card, [0, 0]) counter[num_card][0] += 1 counter[num_card][1] += Decimal(sum_) data['__Счет'] = pd.Series([i for i in counter.keys()]) data['__Кол-во дубликатов'] = pd.Series([i[0] for i in counter.values()]) data['__Сумма'] = pd.Series([i[1] for i in counter.values()]) print(data)