#python #pandas
Вопрос:
У меня есть фрейм данных, как показано ниже:
df1 = pd.DataFrame({'A' : ['a', 'a', 'a', 'b', 'b', 'b', 'c', 'c', 'c'],
'B' : ['b', 'c', 'd', 'a', 'c', 'd', 'a', 'b', 'd'],
'dis' : [1,2,3,1,5,6, 2,5,4]})
>>>> A B dis
0 a b 1
1 a c 2
2 a d 3
3 b a 1
4 b c 5
5 b d 6
6 c a 2
7 c b 5
8 c d 4
Я хочу выбрать только 2-е наименьшее значение в dis
столбце для каждого уникального значения в столбце A
.
Ожидаемые результаты выглядят следующим образом:
>>>> A B dis
1 a c 2
4 b c 5
8 c d 4
Комментарии:
1. Пожалуйста, укажите ввод и вывод в тексте.
Ответ №1:
Попробуйте это
df.groupby(['A']).nth(1).dropna().reset_index()