pandas.MultiIndex.from_frame#
- classmethod MultiIndex.from_frame(df, sortorder=None, names=None)[源代码][源代码]#
从一个 DataFrame 创建一个 MultiIndex。
- 参数:
- dfDataFrame
要转换为 MultiIndex 的 DataFrame。
- sortorderint, 可选
排序级别(必须按该级别按字典顺序排序)。
- 名称类似列表的,可选的
如果没有提供名称,则使用列名称,或者如果列是 MultiIndex,则使用列名称的元组。如果提供了一个序列,则用给定的序列覆盖名称。
- 返回:
- MultiIndex
给定 DataFrame 的 MultiIndex 表示。
参见
MultiIndex.from_arrays
将数组列表转换为 MultiIndex。
MultiIndex.from_tuples
将元组列表转换为 MultiIndex。
MultiIndex.from_product
从可迭代对象的笛卡尔积创建一个 MultiIndex。
例子
>>> df = pd.DataFrame( ... [["HI", "Temp"], ["HI", "Precip"], ["NJ", "Temp"], ["NJ", "Precip"]], ... columns=["a", "b"], ... ) >>> df a b 0 HI Temp 1 HI Precip 2 NJ Temp 3 NJ Precip
>>> pd.MultiIndex.from_frame(df) MultiIndex([('HI', 'Temp'), ('HI', 'Precip'), ('NJ', 'Temp'), ('NJ', 'Precip')], names=['a', 'b'])
使用显式名称,而不是列名
>>> pd.MultiIndex.from_frame(df, names=["state", "observation"]) MultiIndex([('HI', 'Temp'), ('HI', 'Precip'), ('NJ', 'Temp'), ('NJ', 'Precip')], names=['state', 'observation'])