针对“python删除指定列或多列单个或多个内容实例”这个话题,我来给你详细讲解一下完整攻略。
1. 列表中删除指定元素
如果我们有一个列表,想要删除其中指定的元素,可以使用list.append()函数先将需要保留的元素添加到一个新的列表中,然后用新列表覆盖掉原列表。下面是一个例子:
# 原始列表
my_list = [1, 2, 3, 4, 5, 6]
# 需要删除的元素
to_delete = [1, 2, 3]
# 新列表
new_list = []
# 保留需要保留的元素
for i in my_list:
if i not in to_delete:
new_list.append(i)
# 用新列表覆盖掉原列表
my_list = new_list
print(my_list) # 输出 [4, 5, 6]
2. DataFrame中删除指定列或单个内容实例
如果我们使用Pandas创建了一个DataFrame,想要删除其中某些列或某些行,可以使用.drop()函数,如下所示。
# 导入pandas包
import pandas as pd
# 创建一个DataFrame
data = {
'name': ['Tom', 'John', 'Amy', 'Lucy'],
'age': [18, 22, 25, 24],
'gender': ['Male', 'Male', 'Female', 'Female']
}
df = pd.DataFrame(data)
# 删除'df'中的'gender'列
df = df.drop('gender', axis=1)
# 输出'df'
print(df)
运行结果:
name age
0 Tom 18
1 John 22
2 Amy 25
3 Lucy 24
下面是一些常用的.drop()函数参数:
- 删除多个列:
df = df.drop(['column1', 'column2'], axis=1)
- 删除单个行:
df = df.drop(0, axis=0)
- 删除多个行:
df = df.drop([0, 1, 2], axis=0)
3. DataFrame中删除多个内容实例
如果我们想要删除DataFrame中的多个内容实例,我们可以使用.loc[]函数结合布尔索引来实现。比如我们有以下的DataFrame:
# 创建一个DataFrame
data = {
'name': ['Tom', 'John', 'Amy', 'Lucy'],
'age': [18, 22, 25, 24],
'gender': ['male', 'male', 'female', 'female']
}
df = pd.DataFrame(data)
运行结果:
name age gender
0 Tom 18 male
1 John 22 male
2 Amy 25 female
3 Lucy 24 female
我们可以使用以下的代码删除所有年龄小于25岁的人:
# 删除年龄小于25岁的人
df = df.loc[df['age'] >= 25]
# 输出结果
print(df)
运行结果:
name age gender
2 Amy 25 female
3 Lucy 24 female
上述代码中的布尔索引df['age'] >= 25
返回一个DataFrame,表示哪些行的年龄大于等于25岁。然后我们使用.loc[]函数选择返回中为True的行,也就是过滤掉年龄小于25岁的人。
这就是一些关于“python删除指定列或多列单个或多个内容实例”的示例说明。希望对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python删除指定列或多列单个或多个内容实例 - Python技术站