- Pandas数据分析快速上手500招(微课视频版)
- 罗帅 罗斌编著
- 224字
- 2023-07-17 18:40:08
023 根据DataFrame创建笛卡儿积多层索引
此案例主要演示了使用MultiIndex.from_product()函数根据DataFrame的多列数据创建笛卡儿积风格的多层索引的DataFrame。笛卡儿积简述如下:两个集合A与B的笛卡儿积就是A的所有元素乘以B的所有元素的集合。当在Jupyter Notebook中运行此案例代码之后,根据如图023-1所示的DataFrame创建的笛卡儿积风格的多层索引的DataFrame的效果如图023-2所示。

图023-1

图023-2
主要代码如下。

在上面这段代码中,pd.MultiIndex.from_product([df.机构名称, df.行业, df.操作策略], names=df.columns).to_frame().loc[lambda x:x.apply(lambda s: s.notna().all(),axis=1)].astype(str).agg(sum,axis=1).to_frame('详细名单')表示根据df的3列数据创建笛卡儿积样式的多层索引的DataFrame。
此案例的主要源文件是MyCode\H541\H541.ipynb。