python - DataFrame 在 multiIndex 上领先
问题描述
df = pd.DataFrame(data=[['A', 'B', 12], ['A', 'B', 143], ['C1', 'C1', 11], ['C1', 'C1', 11],['C1', 'C1', 11], ['C3', 'C4', 11]], columns=['first', 'secound', 'data'])
df.set_index(['first', 'secound'], inplace=True)
data
first secound
A B 12
B 143
C1 C1 11
C1 11
C1 11
C3 C4 11
我想获取first
索引级别中前两个索引值的所有数据。期望的结果是:
data
first secound
A B 12
B 143
C1 C1 11
C1 11
C1 11
谢谢
解决方案
你是这个意思吗?
In [9]: df.loc[df.index.get_level_values(0).unique()[:2].tolist()]
Out[9]:
data
first secound
A B 12
B 143
C1 C1 11
C1 11
C1 11
推荐阅读
- vba - 我想知道为什么我会收到这个错误?
- android - MacOS Big Sur - AVD 崩溃
- redcap - REDCap:如何更改调查返回说明的文本颜色?
- python - 使用 python 子进程运行 GNU 并行命令
- python - 为什么 GitLab CI 上的 PySide6 会导致 ImportError?
- angular - 如何对 Mongodb 数据库返回的文档进行排序?
- python - 在 for 循环中从 int 值创建一个 (n,1) 数组
- python - 如何在 Django 中创建依赖下拉表单
- php - node.js 可以为每个用户读取 php 会话吗?
- r - 将多个二元变量组合成多级变量(使用所有可能的组合而不重复)