У меня есть два Dataframes в Python Pandas. Предположим, что первый из них - df1
. Нет необходимости, чтобы столбец идентификатора был заказан.Найти min, max и среднее значение ID в Python Pandas
id B C
0 1 5 1
1 1 5 1
2 1 6 1
3 1 7 1
4 2 5 1
5 2 6 1
6 2 6 1
7 3 7 1
8 3 7 1
9 4 6 1
10 4 7 1
11 4 7 1
Тогда второй dataframe df2
имеет столбец с уникальными значениями id
id
0 1
1 2
2 3
3 4
Я хочу, чтобы вычислить минимальное, максимальное и среднее значение столбца B
для каждого id
и добавить его к второй блок данных. Результат будет выглядеть так:
id min max avg
0 1 5 7 5.75
1 2 ..
2 3 ..
3 4 ..
В этом примере, я был в состоянии повторить его путем расчета их для каждого id
руководства. Это не проблема, поскольку в примере есть только 4 идентификатора. Но мой реальный пример имеет более 1000 идентификаторов. Есть ли какой-либо автоматический способ сделать это?
Вы можете просто сделать 'df.groupby ('идентификатор') [ 'B']. AGG ([ 'мин', 'Макс', 'средний']) 'here – EdChum
Правда, я давал намек, что вы можете использовать numpy funcs для agg. – Zero
Я думаю, это трудно понять, пока вы не попробуете, какие ufuncs уже отображают из строки в их np эквиваленты – EdChum