в пандах, как я могу группировать по будням () для столбца datetime?

Я хотел бы отфильтровать выходные данные и просматривать данные только по будням (mon (0) -fri (4)). Я новичок в пандах, что лучший способ сделать это в пандах?

import datetime from pandas import * data = read_csv("data.csv") data.my_dt Out[52]: 0 2012-10-01 02:00:39 1 2012-10-01 02:00:38 2 2012-10-01 02:01:05 3 2012-10-01 02:01:07 4 2012-10-01 02:02:03 5 2012-10-01 02:02:09 6 2012-10-01 02:02:03 7 2012-10-01 02:02:35 8 2012-10-01 02:02:33 9 2012-10-01 02:03:01 10 2012-10-01 02:08:53 11 2012-10-01 02:09:04 12 2012-10-01 02:09:09 13 2012-10-01 02:10:20 14 2012-10-01 02:10:45 ... 

Я хотел бы сделать что-то вроде:

 weekdays_only = data[data.my_dt.weekday() < 5] 

AttributeError: объект 'numpy.int64' не имеет атрибута 'weekday'

но это не сработает, я не совсем понял, как доступны объекты столбца datetime.

Конечная цель состоит в том, чтобы упорядочивать иерархию по будним часам, например:

 monday, 0-6, 7-12, 13-18, 19-23 tuesday, 0-6, 7-12, 13-18, 19-23 

2 Solutions collect form web for “в пандах, как я могу группировать по будням () для столбца datetime?”

ваш вызов функции «weekday» не работает, поскольку он работает с индексом data.my_dt, который является массивом int64 (откуда приходит сообщение об ошибке)

вы можете создать новый столбец в данных, содержащих дни недели, используя что-то вроде:

 data['weekday'] = data['my_dt'].apply(lambda x: x.weekday()) 

то вы можете фильтровать по будням:

 weekdays_only = data[data['weekday'] < 5 ] 

надеюсь, это поможет

Более быстрый способ – использовать DatetimeIndex.weekday , например:

 temp = pd.DatetimeIndex(data['my_dt']) data['weekday'] = temp.weekday 

Гораздо быстрее, особенно для большого количества строк. Для получения дополнительной информации проверьте этот ответ.

  • Поиск CSV-файлов с помощью Pandas (уникальный идентификатор) - Python
  • Python: прочитайте несколько json-файлов из папки
  • Pandas read_csv от url
  • Фильтрация фрейма данных на основе столбцов value_counts (pandas)
  • Как освободить память, используемую файловой рамкой pandas?
  • Как сделать объединение мультииндекса данных с другим мультииндексированным фреймворком?
  • Установка столбцов для пустого кадра данных pandas
  • Чтение пар ключ-значение в Pandas
  • Python - лучший язык программирования в мире.