Resample Pandas dataframe недействителен - PullRequest
0 голосов
/ 17 апреля 2019

Я пытаюсь импортировать CSV-файл 30-минутной серии с пандами, чтобы повторно сэмплировать его в часы, но функция повторной выборки не распознает формат даты и времени.

  1. Импорт работает правильно с помощью скрипта, найденного в stackoverflow.
  2. Когда я открываю фрейм данных и дважды щелкаю на дате + времени, это говорит о том, что я не могу редактировать метку времени.
  3. Когда я пытаюсь повторно сэмплировать DataFrame, он выдает TypeError: 'Действителен только с DatetimeIndex, TimedeltaIndex или PeriodIndex, но получил экземпляр RangeIndex'

Ниже приведен код, который я сейчас использую, дата и время разделены столбцами в файле .csv и объединены сценарием в datetime. CSV состоит из 8 столбцов и 5131 строк.

def dateparse(d,t):
    dt = d + " " + t
    return pd.datetime.strptime(dt, '%d/%m/%Y %H:%M:%S')
df = pd.read_csv(infile, parse_dates={'datetime': ['date', 'time']}, date_parser=dateparse)

df.resample('H').mean()

Кто-нибудь знаком с этой проблемой?

1 Ответ

0 голосов
/ 17 апреля 2019

Сначала установите индекс кадра данных для столбца datetime, преобразуйте его в индекс даты и времени, и он должен работать.

def dateparse(d,t):
    dt = d + " " + t
    return pd.datetime.strptime(dt, '%d/%m/%Y %H:%M:%S')
df = pd.read_csv(infile, parse_dates={'datetime': ['date', 'time']}, date_parser=dateparse)

df = df.set_index('datetime')
df.index = pd.to_datetime(df.index)
df.resample('H').mean()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...