📌  相关文章
📜  从多索引 Pandas Dataframe 中删除特定行(1)

📅  最后修改于: 2023-12-03 14:49:22.992000             🧑  作者: Mango

从多索引 Pandas Dataframe 中删除特定行

有时候我们需要从一个多索引 Pandas Dataframe 中删除一些特定行,这时候我们可以使用 Pandas 中的 drop 方法来实现。

假设我们有以下的一个多索引 Pandas Dataframe:

import pandas as pd

data = {
    ('A', 'a'): [1, 2, 3],
    ('A', 'b'): [4, 5, 6],
    ('B', 'a'): [7, 8, 9],
    ('B', 'b'): [10, 11, 12]
}
df = pd.DataFrame(data, index=['row1', 'row2', 'row3'])
print(df)

输出如下:

      A     B    
      a  b  a   b
row1  1  4  7  10
row2  2  5  8  11
row3  3  6  9  12

现在我们想要删除第 2 行和第 3 行,我们可以使用以下代码:

df = df.drop(["row2", "row3"])
print(df)

输出如下:

      A     B    
      a  b  a   b
row1  1  4  7  10

我们也可以根据某一列或者某一级别的标签来删除特定行。

假设我们想要删除 A 列下的所有行,我们可以使用以下代码:

df = df.drop(labels="A", axis=1, level=0)
print(df)

输出如下:

      B    
      a   b
row1  7  10
row2  8  11
row3  9  12

总结:

以上就是从多索引 Pandas Dataframe 中删除特定行的方法。通过使用 Pandas 中的 drop 方法,我们可以轻松删除多索引 Pandas Dataframe 中的任何行。