2017-01-18 49 views
3

布尔我现在有一个数据帧:蟒蛇 - dataframe.loc,对指数

df = |0 10| 
    |1 20| 
    |2 30| 

我试图返回一个新的数据帧,df2 = df['INDEXNAME' < 2],所以它只返回前两排。

我已经试过:

df.loc[df<100] 
df.loc[df['INDEXNAME']<100] 

但这些都是给我一个

KeyError: 'INDEXNAME'

有什么想法?谢谢!

+0

什么是与数据的列的名称?使用它的INDEXNAME的insead - 我相信这只是一个占位符 – snow

+0

与数据列名为“数据”,我已经命名索引“INDEXNAME”。我意识到这些是多么残酷的名字......四处乱窜。 – keynesiancross

回答

2

您可以使用查询:

df= pd.DataFrame({'value':[10,20,30]}, index = [20,2,0]) 
df.index.name = "beta" 

df.query("beta < 2") 
# value 
#beta 
#0  30 

或:

df[df.index < 2] 
# value 
#0 30 
+0

这样做,谢谢! – keynesiancross