Начиная с pandas
данных с многомерной структурой заголовка столбца, такой как следующий, есть способ, которым я могу преобразовать заголовки и Area Codes
, чтобы они охватывают каждый уровень (т.е. так одного Area Names
и Area Codes
метки, охватывающих несколько заголовок столбца, строки?Установка индекса строки и запрос на фрейм данных pandas с колонками с несколькими индексами
Если да, то как я мог бы выполнить запрос по столбцу просто возвращает строку, соответствующую определенному значению (например, Код города из E06000047), или очень высокие значенияНизкая и для АНГЛИИ в 2012/13?
Интересно, было бы легче определить индекс строки на основе либо Area Code или Площадь имен или индекс ['*Area Code*', '*Area Names*']
строки в два столбца. И если да, как я могу сделать это из текущей таблицы? set_index
, похоже, не работает при использовании текущей структуры?
фрагмент кода для создания выше:
import pandas as pd
df= pd.DataFrame({('2011/12*', 'High', '7-8'): {3: 49.83,
5: 50.01,
7: 48.09,
8: 43.58,
9: 44.19},
('2011/12*', 'Low', '0-4'): {3: 6.51, 5: 6.53, 7: 6.49, 8: 6.41, 9: 6.12},
('2011/12*', 'Medium', '5-6'): {3: 17.44,
5: 17.59,
7: 18.11,
8: 19.23,
9: 20.01},
('2011/12*', 'Very High', '9-10'): {3: 26.22,
5: 25.87,
7: 27.32,
8: 30.78,
9: 29.68},
('2012/13*', 'High', '7-8'): {3: 51.16,
5: 51.35,
7: 48.47,
8: 44.67,
9: 49.39},
('2012/13*', 'Low', '0-4'): {3: 5.71, 5: 5.74, 7: 6.73, 8: 8.42, 9: 6.51},
('2012/13*', 'Medium', '5-6'): {3: 17.1,
5: 17.29,
7: 18.46,
8: 20.23,
9: 15.81},
('2012/13*', 'Very High', '9-10'): {3: 26.03,
5: 25.62,
7: 26.34,
8: 26.68,
9: 28.3},
('Area Codes', 'Area Codes', 'Area Codes'): {3: 'K02000001',
5: 'E92000001',
7: 'E12000001',
8: 'E06000047',
9: 'E06000005'},
('Area Names', 'Area Names', 'Area Names'): {3: 'UNITED KINGDOM',
5: 'ENGLAND',
7: 'NORTH EAST',
8: 'County Durham',
9: 'Darlington'}})