gpt4 book ai didi

python - 无法使用 pandas 复合索引访问数据

转载 作者:太空宇宙 更新时间:2023-11-03 19:53:20 25 4
gpt4 key购买 nike

我正在尝试使用 pandas 数据框组织数据。

考虑到数据的结构,使用复合索引似乎是合乎逻辑的; “league_id”和“fixture_id”。我相信我已经根据文档中的示例实现了这一点,但是我无法使用索引访问数据。

我的代码可以在这里找到; https://repl.it/repls/OldCorruptRadius

** 我对 Pandas 和一般编程非常陌生,所以任何建议将不胜感激!谢谢! **

最佳答案

对于多重索引,您需要使用 pandas MutliIndex API,它有自己的学习曲线;因此,我不会推荐初学者使用它。链接:https://pandas.pydata.org/pandas-docs/stable/user_guide/advanced.html

我使用多重索引的方式只是为了向其他人展示最终产品(即使其易于/美观地查看)。在多重索引之前,您首先将 fixture_idleague_id 作为列进行过滤:

df = pd.DataFrame(fixture, columns=features)
df[(df['fixture_id'] == 592) & (df['league_id'] == 524)]

这样,如果您对两列进行了多重索引,那么从技术上讲您仍然可以定位索引。

如果您必须使用多重索引,请尝试 pandas DataFrame 的转换功能。这会将索引转换为列,反之亦然。例如,您可以执行以下操作:

df = pd.DataFrame(fixture, columns=features).set_index(['league_id', 'fixture_id'])
df.T[524][592].loc['event_date'] # gets you the row of `event_dates`
df.T[524][592].loc['event_date'].iloc[0] # gets you the first instance of event_dates

关于python - 无法使用 pandas 复合索引访问数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59696064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com