2016-02-27 6 views
3

Я использую группу PANDAS и замечаю, что он удаляет имя заголовка значения, которое я запускаю.PANDAS GroupBy Removing Header

data = pd.read_csv("<CSV FILE NAME>", low_memory=False) 
print data.head() 
print data.columns 

дает мне следующий вывод:

 Store ID  Daily Sales 
0  4444444   436 
1  4555555   406 
2  6435353   487 
3  3421456   637 
4  1111111   516 
Index([u'Store ID', u' Daily Sales'], dtype='object') 

Когда я бегу

data = data.groupby(['Store Number']).mean() 
print data.head() 
print data.columns 

Выход изменяется на

    Daily Sales 
Store ID    
4166646  236.280394 
4166663  152.061884 
4166664  131.163746 
4166665  144.920044 
4166666  225.075027 
Index([u'Daily Sales'], dtype='object') 

Имя ID заголовка магазина добавляется как значение и удаляется из h имена eader. В чем причина этого и есть ли исправление?

+1

'data.reset_index()' является ключом :) – cel

+0

@cel спасибо, что решили его :) Я не очень понимаю, что он делает, хотя. Когда я запускаю групповое значение, почему он решил удалить столбец «Идентификатор магазина»? – rvisio

+1

Выбранные столбцы являются новым индексом результата. поэтому они, кажется, теряются. 'reset_index()' удаляет этот специальный индекс и снова делает их нормальными. Я уверен, что есть пара вопросов/ответов, которая объясняет это хорошо. Вероятно, кто-то из людей-питонов свяжет это. – cel

ответ

4

установить параметр as_index в значение False.

data.groupby(['Store Number'], as_index=False).mean() 
+0

Спасибо, индексирование в пандах меня смущает – rvisio

-1

решаемые @cel в комментариях добавляющих в data = data.reset_index() после запуска GroupBy() добавлен заголовок назад