Как заменить значения дубликатов на уникальные значения?
Подскажите пожалуйста, возможно ли без циклов в pandas заменить дублирующийся значения на уникальные? К примеру, если в столбце есть значения 100, 100, 200, 200, 200, то на выходе должно получиться, например, 100-1, 100-2, 200-1, 200-2, 200-3.
На входе есть таблица фрейм данных:
dataframe = pd.DataFrame({'article': ['art.01', 'art.02', 'art.03', 'art.04', 'art.05', 'art.06'], 'price': [100, 200, 300, 100, 150, 100], 'posting_number': ['1000-100-1', '2000-100-1', '1000-100-1', '1000-100-1', '2000-100-1', '3000-100-1']})
Необходимо, чтобы для каждого дублирующего значения столбца posting_number
был добавлен, например их индекс, или порядок дубликата, что бы в конечном счете все значения в posting_number
были уникальными. Я попытался это сделать примерно так, но ничего не вышло.
dataframe[dataframe.duplicated(["posting_number"])] \
.loc["posting_number"] = dataframe["posting_number"] + "-" + str(dataframe.index)
Как возможно решить данную задачу?
Источник: Stack Overflow на русском