Pandas 在列中给定特定条件时,如何系统地删除行?

Pandas 在列中给定特定条件时,如何系统地删除行?,pandas,rows,Pandas,Rows,我有一个简单的数据框架,由3列组成:年、期间(月)和通货膨胀 我想删除偶数个月(例如,2月、4月等),我得到的代码如下: i = df[((df["Periodo"] == "Febrero") | (df["Periodo"] == "Abril") | (df["Periodo"] =="Junio") | (df["Periodo"] =="

我有一个简单的数据框架,由3列组成:年、期间(月)和通货膨胀 我想删除偶数个月(例如,2月、4月等),我得到的代码如下:

i = df[((df["Periodo"] == "Febrero") | (df["Periodo"] == "Abril") | (df["Periodo"] =="Junio") | (df["Periodo"] =="Agosto") | (df["Periodo"] =="Octubre") | (df["Periodo"] =="Diciembre"))].index
df.drop(i, inplace = True)
有没有一种比键入那些繁琐的或条件更快的方法来创建索引?像一个for循环之类的。 谢谢

您可以使用(注意
~
用作否定):

to_drop=[“Febrero”、“Abril”、“Junio”、“Agosto”、“Octubre”、“Diciembre”]
打印(df[~df.Periodo.isin(to_drop)])
您可以使用(注意
~
用作否定):

to_drop=[“Febrero”、“Abril”、“Junio”、“Agosto”、“Octubre”、“Diciembre”]
打印(df[~df.Periodo.isin(to_drop)])