Python 如何使用*args在函数中基于年的数据帧上删除基于年的行

Python 如何使用*args在函数中基于年的数据帧上删除基于年的行,python,python-2.7,pandas,Python,Python 2.7,Pandas,我正试图根据索引年份从数据框中删除行,例如: def drop(df, col, *args): dropedyrs = df.drop(df.index.year[[args]]) drop(df, 'col', 1999, 2002) IndexError: unsupported iterator index 然而,这产生了一个错误。我也尝试过这种方法,但也产生了一个错误: dropedyrs = df[df.index.year != args] KeyError: Tr

我正试图根据索引年份从
数据框中删除行,例如:

def drop(df, col, *args):
    dropedyrs = df.drop(df.index.year[[args]])

drop(df, 'col', 1999, 2002)

IndexError: unsupported iterator index
然而,这产生了一个错误。我也尝试过这种方法,但也产生了一个错误:

dropedyrs = df[df.index.year != args]

KeyError: True

有人对修复有什么建议吗?

您的
col
参数似乎未使用,但是,您有什么理由不能执行以下操作吗

def drop(df, col, args):
    dropedyrs = df.drop(df.index.year[[args]])

drop(df, 'col', [1999, 2002])

谢谢,这是一个比我简单得多的方法!