Python 3.6.5 возвращает '<' не поддерживается между экземплярами сообщений об ошибках 'tuple' и 'str'
Я пытаюсь разделить набор данных на часть обучения и тестирования. Я борюсь со структурной проблемой, так как кажется, что иерархия данных кажется неправильной, чтобы перейти к следующему коду.
Я попробовал следующее:
import pandas as pd
data = pd.DataFrame(web.DataReader('SPY', data_source='morningstar')['Close'])
cutoff = '2015-1-1'
data = data[data.index < cutoff].dropna().copy()
1 ответ
Решение
Как data.head()
покажет, data
на самом деле не pd.DataFrame
но pd.Series
чей индекс pd.MultiIndex
(как предполагает также ошибка, которая намекает на то, что каждый элемент является кортежем), а не pd.DatetimeIndex
,
То, что вы могли бы сделать, это просто позволить
df = data.unstack(0)
С этим, df[df.index < cutoff]
выполняет фильтрацию, которую вы пытаетесь сделать.