查询Pandas数据帧索引

7

我在我的数据框中有一个简单的索引(0到n的整数)。

如果我想要行索引值为1、10、100,如何查询索引以仅获取这些行?

谢谢


你可以尝试这种方式... df.iloc[[1,10,100], :] - su79eu7k
@su79eu7k 我正在使用 df.loc[df.index.isin([vals])] 这种方式,看起来是可以工作的,但我不确定这是否是一个好的做法。 - code base 5000
3个回答

8
在您的情况下,索引等同于整数位置。 因此,您可以使用 .loc 或者 .iloc

.loc 主要基于标签进行索引...

.iloc 主要基于整数位置进行索引(从0到轴的长度-1)

请参见不同的索引方式

5

试试这个:

result = data.loc[[1,10,100]]

Calvin,使用iloc和loc有什么区别吗? - code base 5000

0
如果有人因为任何原因更喜欢执行查询,可以这样做:
df.query("index in [1,10,100]")

pandas.DataFrame.query的文档中:

默认情况下,DataFrame实例的DataFrame.index和DataFrame.columns属性被放置在查询命名空间中,这使您可以将帧的索引和列都视为帧中的一列。标识符index用于帧索引;您还可以使用索引的名称来在查询中标识它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接