Различные значения в группе по столбцам до и после группировки в кадре данных pandasPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Различные значения в группе по столбцам до и после группировки в кадре данных pandas

Сообщение Anonymous »

У меня есть следующий код:

Код: Выделить всё

sum_columns = ['p', 'q', 'r', 'Ax', 'Ay', 'Az']
avg_columns = ['Bx', 'By', 'Bz', 'G2 C03']
agg_map = {col: 'sum' for col in sum_columns}
agg_map.update({col: 'mean' for col in avg_columns})

df = df.groupby(['MAC C01', 'MAC C02', 'MAC C03'], as_index=False).agg(agg_map)
Кадр данных перед группировкой по:

Код: Выделить всё

         p    q    r  Ax  Ay   Az  Bx  By  Bz  G2 C03   MAC C01   MAC C02  MAC C03
0      0.0  0.0  0.1   0   0    0   0   0   0     0.0   0.00000   0.00000      0.0
1      0.0  0.1  0.1   0   0    0   0   0   0     0.0   0.00000   0.00000      0.0
2      0.0  0.1  0.0   0   0    0   0   0   0     0.0   0.00000   0.00000      0.0
3      0.0  0.0  0.1   0   0    0   0   0   0     0.0   0.00000   0.00000      0.0
4      0.0  0.0  0.0 -34   2  251 -23  78  45     0.0  19.12377  73.07937      0.0
...    ...  ...  ...  ..  ..  ...  ..  ..  ..     ...       ...       ...      ...
14676  0.3 -0.3 -1.0 -39  -9  250  66 -23  49     0.0  19.12376  73.07938      0.0
14677  0.9  0.3 -1.0 -39  -9  250  66 -23  49     0.0  19.12376  73.07938      0.0
14678  0.5  0.1  2.5 -39  -9  250  66 -23  49     0.0  19.12376  73.07938      0.0
14679 -0.2 -0.1  1.8 -39  -9  250  66 -23  49     0.0  19.12376  73.07938      0.0
14680 -0.9  0.2 -2.3 -39  -9  250  66 -23  49     0.0  19.12376  73.07938      0.0

[14681 rows x 13 columns]
Кадр данных после группировки по:

Код: Выделить всё

       MAC C01   MAC C02  MAC C03             p     q     r   Ax  Ay    Az    Bx    By    Bz  G2 C03
0      0.00000   0.00000      0.0  0.000000e+00   0.2   0.3    0   0     0   0.0   0.0   0.0     0.0
1     19.12135  73.07947     75.0  1.330000e+01   6.4 -31.9 -140   0  1230  -4.0 -79.0  26.0    75.0
2     19.12135  73.07959     75.8  1.160000e+01   8.3 -47.0 -248   8  2080   1.0 -78.0  28.0    75.0
3     19.12135  73.07968     76.6  1.030000e+01   5.1 -32.9 -174   6  1560   6.0 -77.0  29.0    76.0
4     19.12136  73.07938     74.6  2.260000e+01  14.9 -56.7 -224   0  2144 -10.0 -78.0  23.0    74.0
...        ...       ...      ...           ...   ...   ...  ...  ..   ...   ...   ...   ...     ...
1452  19.12607  73.07969    184.8  8.881784e-16 -18.9 -27.7  216 -24  2240   8.0  74.0  47.0   184.0
1453  19.12608  73.07933    178.4 -1.600000e+00  15.2 -17.8  408 -16  2080   1.0  75.0  47.0   178.0
1454  19.12608  73.07941    180.1 -4.100000e+00   8.6 -19.0  328   8  1656   3.0  76.0  46.0   180.0
1455  19.12608  73.07949    181.6 -3.500000e+00 -10.8 -22.5  312 -32  1768   5.0  75.0  46.0   181.0
1456  19.12608  73.07960    183.2  2.600000e+00 -17.1 -23.9  296  -8  2296   6.0  75.0  47.0   183.0

[1457 rows x 13 columns]
Как «первый ненулевой» MAC C01 (строка с индексом 4) 19.12377 перед группировкой, но то же самое после группировки - 19.12135 (строка под индексом 2)? Разве оба не должны быть одинаковыми? Точно так же, как последний MAC C01 перед группировкой - 19.12376, но после группировки - 19.12608?
Я думаю, что делает группа по, сохраняет уникальные значения для группировки столбцов и объединяет другие столбцы, используя указанную функцию. Поскольку он «сохраняет уникальные значения» для группировки по столбцам, я считаю, что «первые ненулевые» значения группы по столбцу должны быть одинаковыми, и, аналогично, последние значения группы по столбцу также должны быть одинаковыми. Но здесь, похоже, это не так.
Что мне не хватает?

Подробнее здесь: https://stackoverflow.com/questions/793 ... as-datafra
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»