📅  最后修改于: 2023-12-03 15:33:24.060000             🧑  作者: Mango
Pandas 中的分层数据(Hierarchical Indexing)是一种多级索引的数据结构。在 Pandas 中,我们可以使用这种数据结构来表示具有多个维度的数据,并在索引时更加灵活。
我们可以通过传入一个元组的列表来创建一个分层数据:
import pandas as pd
data = pd.DataFrame({'price': [1.0, 2.0, 3.0, 4.0],
'volume': [10, 20, 30, 40],
'symbol': ['AAPL', 'AAPL', 'GOOG', 'GOOG'],
'date': ['2020-01-01', '2020-01-02', '2020-01-01', '2020-01-02']})
data = data.set_index(['symbol', 'date'])
上面的代码中,我们通过将 symbol
和 date
列设置为索引来创建了一个分层数据。现在,我们可以通过以下的方式来访问数据:
data.loc['AAPL', '2020-01-01']
在分层数据中,我们可以使用多个索引来选择子集。例如,我们可以使用 loc
来选择一个符号和日期的子集:
data.loc[('AAPL', '2020-01-01'), :]
我们也可以使用 iloc
来选择一个子集:
data.iloc[0:2, :]
我们也可以对分层数据进行一些操作,例如:
data = data.rename_axis(['symbol', 'date'])
data = data.swaplevel('symbol', 'date')
data = data.sort_index()
data.sum(level='symbol')
在 Pandas 中,分层数据可以帮助我们更好地处理具有多个维度的数据。我们可以使用分层数据来选择子集、操作数据、计算统计量等。