Python 索引未自然排序的数据帧中的数据行

Python 索引未自然排序的数据帧中的数据行,python,pandas,dataframe,indexing,Python,Pandas,Dataframe,Indexing,我有一个从另一个数据帧采样的数据帧,因此它的行顺序不会一个接一个地递增: col1 col2 14 info1 info2 25 info3 info3 46 info5 info6 和一个索引对象: Int64Index([ 273, 447, 1073, 1079, 1416, 1757, 1786, 2072, 2389, 2657, ... 3664

我有一个从另一个数据帧采样的数据帧,因此它的行顺序不会一个接一个地递增:

    col1   col2
14  info1  info2
25  info3  info3
46  info5  info6
和一个索引对象:

Int64Index([   273,    447,   1073,   1079,   1416,   1757,   1786,   2072,
              2389,   2657,
            ...
            366433, 366457, 366472, 367458, 367971, 368195, 368505, 369282,
            369402, 371835],
           dtype='int64', length=737)

我需要根据数据帧中的索引对象选择行,但是,
.loc
似乎没有像我预期的那样工作,因为当我使用
df.iloc[Int64Index]
时,会出现越界错误。如果我只从index对象中选择一个整数,比如273,我发现选择的是数据帧中的第273行,而不是顺序为273的行。

看起来索引中有空格。您可以这样做:

df.loc['   273']

你在这里说的是
loc
还是
iloc
loc
强制使用明确定义的索引值进行索引和切片,因此使用
df。loc[273]
将为您提供名为
273
的索引行
iloc
使用隐式索引,即独立于您在索引中输入的内容的“ith”元素(例如“Paris”、“London”或偶数:273、2、4等)。您的索引似乎是空白的,如果这对您来说无关紧要,您可以通过执行
df.reset_index(drop=True)
drop
如果要删除前一个索引列)