简短版
对于pandas的Dataframe.__getitem__()
,有哪些允许的输入(实际上是输入类型),以及该函数会产生什么结果?
详细信息
问题描述
我想编写能够充分利用DataFrame[],即Dataframe.__getitem__()
的代码。为此,我需要了解输入/返回结果的信息,就像在API页面上找到的那样详细,但该方法的API页面上没有提供相关信息。
已经采取的措施
我查找了Pandas API页面上该函数的完整规范。虽然文档中记录了许多其他方法,但没有记录Dataframe.__getitem__()
。
我还查看了教程,但我不认为它试图做到详尽无遗。
我查看了Dataframe.__getitem__()
的源代码(首次尝试在我的答案中进行了描述)。很明显,该函数可以接受各种不同的类型作为输入,但逆向工程代码以确定每种类型传递时会发生什么似乎不是掌握该方法的预期方式。
额外背景信息
Pandas是Python在科学和统计方面最重要的库之一,DataFrame可以说是Pandas中最核心的对象,而[]
运算符可以说是DataFrame上最核心的方法。因此,实际回答我在这里发布的问题具有非常高的教育价值,不仅仅是对我有用。
[ ]
的这种用法在DataFrame
对象中实现得非常特殊,因此有关此的参考文档将会很有意义。 - joris.iloc[]/.loc[]
来非常明确地区分基于标签和基于位置的索引(因为[]
可以根据情况而变化,就像ix
一样,只是文档记录得更多一些)。 - joris