对于一个项目,我正在使用BeautifulSoup为我的大学抓取一些表调度数据,然后使用pandas.read_html()将其读取到DataFrame中。但是,数据位于一个大表中,该表使用两个标题从视觉上分为多个表:大学标题(即“工程学院”),然后是每个列的标题(即“课程”,“开始”)。
ex:
工程学专业
课程|开始|结束| ...
Pandas正确地将标题解析为一个MultiIndex,其中每个索引元组的第一部分是学院,第二部分是列标题。但是,我想要具有单个列索引的多个DataFrame,并由大学分开。我该怎么做?
如果我理解正确,它是大学名称的多级索引,后跟各列,您想按大学名称进行拆分。
Assuming df is your multiindex column dataframe,
di = {}
for i in df.columns.levels[0]:
di[i] = df[i]
这将创建一个包含大学的键值对和相应数据框的字典