Групповой вывод моего dataframe - это некоторые шестнадцатеричные числа, но не значения? Зачем? - PullRequest
0 голосов
/ 29 августа 2018

Мой фрейм данных имеет 192 столбца: первый столбец - это время, а второй - значение столбца. Эти два столбца относятся к одному конкретному полю данных. Третий столбец - это время и значение четвертого столбца, и они принадлежат другому полю. Аналогично, у меня есть данные из 96 полей (дата и время), что приводит к 192 столбцам. Это данные за два года. Каждый день поле будет иметь около 200 образцов. То же самое касается всех 96 полей.

  1. Я пытаюсь найти максимальное значение для каждого дня для данного поля. Я хочу сохранить это максимальное значение вдоль столбца, названного в честь этого поля, и вместе с днем ​​в виде фрейма данных с именем max_data. Это может быть использовано снова позже. Точно так же я скопирую все остальные поля и сохраню их значения в max_data.

  2. Я хочу построить максимум каждого дня для поля max_data dataframe?

Мой код:

.
for i,j in zip(modules_pmpp_df.columns[::2],modules_pmpp_df.columns[1::2]):
    modules_pmpp_df[i] = pd.to_datetime(modules_pmpp_df[i])
    print(modules_pmpp_df.groupby(modules_pmpp_df[i].dt.strftime('%B'))[j].max)

Текущий вывод:

<bound method GroupBy.max of <pandas.core.groupby.groupby.SeriesGroupBy object at 0x0000000004E3F518>>
<bound method GroupBy.max of <pandas.core.groupby.groupby.SeriesGroupBy object at 0x0000000008020C88>>
<bound method GroupBy.max of <pandas.core.groupby.groupby.SeriesGroupBy object at 0x00000000560AA668>>
.
.

Модифицированный код в соответствии с @jezrael дает следующий вывод:

print(modules_pmpp_df.groupby(modules_pmpp_df[i].dt.strftime('%B'))[j].max())

Вывод:

TypeError: '>=' not supported between instances of 'str' and 'float'

Модифицированный код в соответствии с @ U9-Forward дает следующий вывод:

print(modules_pmpp_df.groupby(modules_pmpp_df[i].dt.strftime('%B'))[j].max(axis=1))

Вывод:

TypeError: '>=' not supported between instances of 'str' and 'float'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...