You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决使用Pandas的DataFrame.drop方法时触发的FutureWarning警告

问题修复方案

警告原因

FutureWarning: In a future version of pandas all arguments of DataFrame.drop except for the argument 'labels' will be keyword-only

该警告触发原因是你调用DataFrame.drop()方法时,第二个参数直接按位置传入了代表删除列的1,未来版本的pandas要求除第一个labels参数外,其余所有参数都必须通过关键字形式传递,不支持位置传参。

修复方法

将所有drop调用中代表轴向的参数改为显式的关键字参数axis=1即可消除警告,修改后的完整代码如下:

import pandas
active_employee = pandas.read_excel("All Active Employee.xlsx", sheet_name=0)
data_one_clean = active_employee.drop(active_employee.columns[0:3], axis=1)
data_two_clean = data_one_clean.drop(data_one_clean.columns[1:10], axis=1)
data_three_clean = data_two_clean.drop(data_two_clean.columns[2], axis=1)
data_final = data_three_clean.drop(data_three_clean.columns[3:], axis=1)
print(data_final)

优化建议(可选)

你可以把多次drop操作合并成一次,减少不必要的中间变量,写法更简洁:

import pandas
active_employee = pandas.read_excel("All Active Employee.xlsx", sheet_name=0)
# 先汇总所有需要删除的列索引
drop_cols = [*range(3), *range(4,13), 14, *range(17, len(active_employee.columns))]
data_final = active_employee.drop(active_employee.columns[drop_cols], axis=1)
print(data_final)

内容的提问来源于stack exchange,提问作者Aravind Viswanathan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 12:54:03