删除 Pandas DataFrame 中的行有几种方法,但最常见的方法是使用 drop()
方法,其中需要传递要删除的行的列表。
以下是从 Pandas DataFrame 中删除一个行的列表的完整攻略。
1. 创建一个示例 DataFrame
下面首先创建一个示例 DataFrame,其中包含三行和三列:
import pandas as pd
data = {
'name': ['Alice', 'Bob', 'Charlie'],
'age': [25, 30, 35],
'gender': ['F', 'M', 'M']
}
df = pd.DataFrame(data)
print(df)
输出结果:
name age gender
0 Alice 25 F
1 Bob 30 M
2 Charlie 35 M
2. 删除一个行的列表
现在,假设我们要删除行号为 1 的行,则使用以下代码:
df = df.drop([1])
print(df)
输出结果:
name age gender
0 Alice 25 F
2 Charlie 35 M
如上所述,drop()
方法用于删除行,需要传递要删除的行的列表。
3. 永久删除一个行的列表
可以将 inplace
参数设置为 True
,以永久修改 DataFrame。
df.drop([1], inplace=True)
print(df)
输出结果与上述例子相同。
4. 删除多个行的列表
可以从 DataFrame 中删除多个行:
df = pd.DataFrame(data)
df = df.drop([0, 2])
print(df)
输出结果:
name age gender
1 Bob 30 M
5. 根据条件删除行
在 DataFrame 中,可以根据一些条件来删除行。例如,如果要删除年龄在 30 岁及以上的所有行:
df = pd.DataFrame(data)
# 删除年龄在 30 岁及以上的人员
df = df[df['age'] < 30]
print(df)
输出结果:
name age gender
0 Alice 25 F
上述代码中,使用布尔索引来选择 DataFrame 中 age
列小于 30 的行,并将结果赋值给原始 DataFrame。这将删除年龄为 30 的行(在这个例子中只有 Bob)。
希望这个攻略对你有帮助!