Метод from_arrays
Метод from_arrays является классовым методом
MultiIndex. Он применяется для создания
иерархического индекса из набора массивов,
каждый из которых представляет отдельный
уровень индекса. Первым параметром
передается список массивов (или кортежей),
задающих уровни. Дополнительно можно
указать имена уровней через параметр
names.
Синтаксис
pd.MultiIndex.from_arrays(arrays, names=None)
Пример
Давайте создадим двухуровневый индекс из двух массивов:
import pandas as pd
arrays = [
[1, 1, 2, 2],
['a', 'b', 'a', 'b']
]
index = pd.MultiIndex.from_arrays(arrays)
print(index)
Результат выполнения кода:
MultiIndex([(1, 'a'),
(1, 'b'),
(2, 'a'),
(2, 'b')],
)
Пример
Создадим индекс с именами уровней:
import pandas as pd
arrays = [
[10, 10, 20, 20, 30],
[1, 2, 1, 2, 1]
]
index = pd.MultiIndex.from_arrays(
arrays,
names=['level_1', 'level_2']
)
print(index)
Результат выполнения кода:
MultiIndex([(10, 1),
(10, 2),
(20, 1),
(20, 2),
(30, 1)],
names=['level_1', 'level_2'])
Пример
Используем from_arrays для создания
DataFrame с мультииндексом:
import pandas as pd
arrays = [
['A', 'A', 'B', 'B'],
[1, 2, 1, 2]
]
index = pd.MultiIndex.from_arrays(
arrays,
names=['group', 'num']
)
df = pd.DataFrame(
{'a': [10, 20, 30, 40]},
index=index
)
print(df)
Результат выполнения кода:
a
group num
A 1 10
2 20
B 1 30
2 40
Смотрите также
-
класс
MultiIndex,
который представляет иерархический индекс -
метод
from_tuples,
который создает индекс из кортежей -
метод
from_product,
который создает индекс из декартова произведения -
метод
from_frame,
который создает индекс из DataFrame