DataFrame, как так:Вставьте GroupBy результат в новый столбец РАЗ на экземпляр
new
Color Value
0 Red 100
1 Red 150
2 Blue 50
Я вставив отсчеты дублей в новую серию с:
new['Repeats'] = new.groupby(['Color'])[new.columns[-1]].transform('count')
Какие результаты в:
Color Value Repeats
0 Red 100 2
1 Red 150 2
2 Blue 50 1
Есть ли способ получить тот же результат, но есть только «Повторения» en один раз на экземпляр, например:
Color Value Repeats
0 Red 100 2
1 Red 150
2 Blue 50 1
Мне кажется глупым, но клиент запрашивается как таковой.
Заранее благодарю за любую помощь.
Beat me to it ... :) Я бы заменил на 'np.nan', чтобы вместо столбца Repeats число вводить новый тип с пустой строкой. – 3novak
Это красиво. Спасибо! – bmeredith
@ 3novak: Да, мой первоначальный инстинкт состоит в том, чтобы использовать 'np.nan', но это приведет к преобразованию столбца из' int' в 'float' dtype, что делает counts от' 2' до '2.0' и т. Д. Если клиент @ bmeredith достаточно разборчив, чтобы не нравиться повторный подсчет, им, вероятно, тоже не нравятся поплавки. Путь вокруг этого состоит в том, чтобы сначала преобразовать столбец в строку dtype или что-то в этом роде, поэтому вам нужно будет изменить тип независимо. – root