Как получить фрагменты столбцов фрейма данных в pandas

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

В настоящее время я делаю следующее:

data = pandas.read_csv('mydata.csv')

что дает что-то вроде:

data = pandas.DataFrame(np.random.rand(10,5), columns = list('abcde'))

Я хотел бы разделить этот кадр данных на два кадра данных: один, содержащий столбцы aи bи один, содержащий столбцы c, dи e.

Невозможно написать что-то вроде

observations = data[:'c']
features = data['c':]

Я не уверен, какой метод лучше. Нужен ли мне pd.Panel?

Между прочим, я нахожу индексирование фреймов данных довольно непоследовательным: data['a']разрешено, а data[0]— нет. С другой стороны, data['a':]не разрешены, а data[0:]разрешены. Есть ли для этого практическая причина? Это действительно сбивает с толку, если столбцы индексируются Int, учитывая, что data[0] != data[0:1]

235
задан Georgy 22 January 2019 в 05:27
поделиться