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

时间:2014-06-15 13:06:30

标签: python python-2.7 pandas

我试图根据索引的年份从DataFrame中删除行,例如:

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

有人对修复有任何建议吗?

1 个答案:

答案 0 :(得分:1)

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

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

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