【发布时间】:2022-01-04 04:55:09
【问题描述】:
我有以下数据框:
import pandas as pd
df = pd.DataFrame(
(
{
"foo": ["1", "1", "1", "1", "2", "2", "2", "2"],
"bar": ["1", "2", "3", "4", "1", "2", "3", "4"],
"info": [1, 2, 3, 4, 5, 6, 7, 8],
"event": [0, 0, 1, 0, 0, 1, 0, 0],
}
)
)
# set multiindex
df.set_index(["foo", "bar"], inplace=True)
print(df)
info event
foo bar
1 1 1 0
2 2 0
3 3 1
4 4 0
2 1 5 0
2 6 1
3 7 0
4 8 0
我只想在事件 == 1 之后对数据框进行切片以保留行:
| foo | bar | values | event |
|---|---|---|---|
| 1 | 3 | 3 | 1 |
| 1 | 4 | 4 | 0 |
| 2 | 2 | 6 | 1 |
| 2 | 3 | 7 | 0 |
| 2 | 4 | 8 | 0 |
采样频率足够高,我可以删除 1 的行,但如果可能,我更愿意保留它们。
【问题讨论】:
-
你想得到什么输出?
-
那里的表格。它在 foo:1 中删除前 2 个,在 foo:2 中删除前 1 个
标签: python pandas dataframe multi-index